Skip to content

HTTPS clone URL

Subversion checkout URL

You can clone with HTTPS or Subversion.

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
Checking mergeability… Don't worry, you can still create the pull request.
This comparison is big! We're only showing the most recent 250 commits
Commits on Jul 08, 2014
@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
9399d5c
@cupakromer cupakromer Fix header nesting to resided under the project. b4dfc07
@cupakromer cupakromer Whitespace only update. 2d5f22f
@cupakromer cupakromer Note extract of `stub_model` and `mock_model`. 8c4fd24
@JonRowe JonRowe Merge pull request #1117 from rspec/readme-doc-updates
Readme doc updates
209d274
Commits on Jul 11, 2014
@Kriechi Kriechi make single controller_spec template conform with scaffolded controll…
…er_spec
9c725e2
Commits on Jul 21, 2014
@cupakromer cupakromer Merge pull request #1122 from Kriechi/adapt_template
Standardize controller spec templates.
951e79f
@cupakromer cupakromer Update Changelog per pull request #1122. e5bcd5e
@cupakromer cupakromer Add Rubocop style standards to build.
- Move custom excludes and non-ideal settings to .rubocop_todo.yml
- Inherit the todo file from the main rubocop config
- Add generic description about matcher module.

  We should consider moving the individual generator methods into this
  module. This will allow us to properly document the matchers as in
  rspec-expectations. We can also apply autoload if necessary at that
  point.
f6c277f
@cupakromer cupakromer Forwardport 3.0.2 release notes.
[ci skip]
a9d80e3
Commits on Jul 22, 2014
@JonRowe JonRowe Merge pull request #1118 from rspec/add-rubocop
Use Rubocop
f791721
Commits on Aug 02, 2014
@cupakromer cupakromer Update note that this is exclusion is for bundler.
Close #1133
fef5ea2
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
DSL.
845e14f
@cupakromer cupakromer Indent cuke ruby file definitions consistently.
Standardize on indenting the Ruby code file definitions to one level
inside the `Given` block.
148f4a2
@cupakromer cupakromer Merge pull request #1135 from rspec/no-monkey-patch-cukes
Use RSpec module to hook into the DSL
37b3df3
@cupakromer cupakromer Comment out default auto-loading of `spec/support`
Continuing with the effort to help RSpec suites run faster in isolation;
disable the previously default autoloading of `spec/support` files. With
larger suites, this autoloading had the tendency to load more extraneous
configurations than necessary.

The suggested alternative is to manually require any necessary support
files in the `*_spec.rb` files. Since RSpec has already added `spec/` to
the load path, this is a simple require:

    require 'support/some_file'

This has the pleasant (depending on your point of view) side-effect or
making one think critically about how support files are defined.

Close #1106
68c772f
@cupakromer cupakromer Satisfy Rubocop's guard clause expectations.
Big thanks (づ。◕‿‿◕。)づ to @mikegee for the suggestion in
f6c277f#commitcomment-7167216.
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.
5ff68ea
@cupakromer cupakromer Fix feature spec relying on a support file. 4f492b6
Commits on Aug 04, 2014
@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.
d3ed8ec
@JonRowe JonRowe Merge pull request #1139 from rspec/add-where-to-require-comment
Note where to add requires so Rails is loaded.
d8a0ce7
@JonRowe JonRowe Merge pull request #1137 from rspec/comment-out-default-support-loading
Comment out default auto-loading of `spec/support`
defb19a
@cupakromer cupakromer Merge pull request #1136 from rspec/make-rubocop-happy-with-http-stat…
…us-matcher

Satisfy Rubocop's guard clause expectations.
ddc80b2
Commits on Aug 15, 2014
@cupakromer cupakromer Work towards improving rspec-support script support.
rspec-rails has been a little different than the other repos for a
while. As the shared script setups are improving rspec-rails should
evolve to leverage these as much as possible.

Copy current support function and clone scripts. Update the run build
script to leverage the new scripts. Along the same lines, tweak the
travis build to be more inline as well.
8d79f28
Commits on Aug 16, 2014
@cupakromer cupakromer Include the travis retry wrapping in rake tasks.
Often rspec-rails has gem timeout issues when running the acceptance
suite. To help prevent the common build timeout failures, utilize the
`travis_retry` function to wrap the bundler install.
fdf3524
@cupakromer cupakromer Adjust rubocop config for rspec-support.
Invert the Rubocop config file setup to be in-line with rspec-support
configurations. One more step closer to syncing shared rspec-support
configs in rspec-rails.
916ef84
Commits on Aug 19, 2014
@cupakromer cupakromer Customize build process.
Prep for rspec/rspec-dev#78:
- Move custom functions into dedicated file
- Update run_script to load custom functions
e33c904
@joshk joshk Try out the new beta build environment
`sudo: false` sends the build to the new setup. Faster boot times, less waiting, and better network perf.

Also a little .travis.yml cleanup.
605b087
@cupakromer cupakromer Hook build update to keep travis config. 5a0d428
@JonRowe JonRowe Merge pull request #1144 from rspec/port-rspec-support-scripts
Port some of the rspec dev scripts
cc9ef52
@joshk joshk remove the bundler downgrade
this will allow rspec-rails to use --retry and --jobs
d738087
@joshk joshk Merge branch 'master' into patch-1
Conflicts:
	.travis.yml
1e08d48
@cupakromer cupakromer Updated travis build scripts (from rspec-dev) c725089
Commits on Aug 20, 2014
@joshk joshk moar retries, more jobs 38c4e30
@cupakromer cupakromer Merge pull request #1146 from rspec/update-travis-build-scripts-2014-…
…08-19-for-master

Updates from rspec-dev (2014-08-19)
ad3c4ae
@cupakromer cupakromer Merge pull request #1145 from joshk/patch-1
Try out the new beta build environment
6e7dd84
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.
759446b
@cupakromer cupakromer Merge pull request #1142 from joker1007/adapt_named_route_helpers_split
Fix controller spec fails on edge Rails
7e7556a
@cupakromer cupakromer Try Rails 4.2 beta 146b858
@cupakromer cupakromer Workaround issue alexrothenberg/ammeter#42
Rails 4.2 has deprecated the `capture` method as it is not thread safe.
This shim worksaround the open issue on Ammeter which calls out to
`capture`.

I have no idea if this is thread safe or not.:grimacing: :unamused:
d639569
@alexrothenberg alexrothenberg Removed ammeter-shim and upgraded to ammeter v1.1.1 as it defines `ca…
…pture` now
6c934c4
@cupakromer cupakromer Fix cukes to handle Rails 4.2 scaffold changes.
Rails 4.2 changed how the generated scaffold created views. It has
started capitalizing the model names in the view headers.
09d64fb
Commits on Aug 22, 2014
@cupakromer cupakromer Run 1.8.7 and 2.1.2 first test edges first 4731444
@cupakromer cupakromer Use patch until new gem is cut. db32ea2
@myronmarston myronmarston Updated travis build scripts (from rspec-dev) daf8f8f
@myronmarston myronmarston Merge pull request #1153 from rspec/update-travis-build-scripts-2014-…
…08-22-for-master

Updates from rspec-dev (2014-08-22)
91c317f
Commits on Aug 23, 2014
@cupakromer cupakromer Merge pull request #1149 from rspec/try-rails-4-2-beta
Work toward Rails 4.2 beta support
6008cd8
Commits on Aug 24, 2014
@myronmarston myronmarston Updated travis build scripts (from rspec-dev) 2aa7392
@JonRowe JonRowe Merge pull request #1157 from rspec/update-travis-build-scripts-2014-…
…08-23-for-master

Updates from rspec-dev (2014-08-23)
916a1af
Commits on Aug 25, 2014
@seuros seuros Update feature_generator_spec.rb db92940
@JonRowe JonRowe Merge pull request #1158 from seuros/patch-1
Update feature_generator_spec.rb
1f7736a
@cupakromer cupakromer Bump ammeter to 1.1.2 58454ee
@cupakromer cupakromer Merge pull request #1159 from rspec/ammeter-bump
Bump ammeter to 1.1.2
c038bad
Commits on Aug 27, 2014
@seuros seuros [Generators] Added generator for ActiveJob 5646d1f
@cupakromer cupakromer Merge pull request #1155 from seuros/master
[Generators] ActiveJob
3921b9d
Commits on Aug 28, 2014
@cupakromer cupakromer Include new generator in the Changelog. 6c03144
@cupakromer cupakromer Binstub the generators which shellout.
Since we are binstubbing things in general, it's a good idea to actually
try them out when using the generators in the example apps.
a6f7002
@cupakromer cupakromer Exclude ActiveRecord configs when not available.
More people are not using ActiveRecord these days. The generators should
not include any configs related to `ActiveRecord` when it is not
available. This allows rspec configurations to work properly out-of-the-
box for these other apps.
6d4aedf
@cupakromer cupakromer Include smoke task for non-ActiveRecord apps.
Creates a 2nd set of generator and smoke tasks which target an example
app which does not use ActiveRecord. In order to accomplish this, a
custom in-memory model is used which supports enough of the AR protocol
to allow default specs to pass.

Use a custom "in-memory" model as the ORM replacement. This is a simple
stand-in allowing us to continue to use all of the other Rails
generators. It also prevents us from needing to pull in another ORM gem
such as such as Mongoid, DataMapper, ROM, etc.

The custom "model" is necessary as the non-ActiveRecord example app's
specs fail with `NameError`s. This is due to the other Rails' generators
expecting to have a "model" type class available, but Rails is unable to
load it.  Just adding the classes does not work as the generated
controllers, form helpers, rendering process, etc. are so tightly
coupled to the `ActiveModel` API interface that all sorts of things
start failing.
09ad7b3
@cupakromer cupakromer Move example app geneators.
Change the directory name from "templates" to "example_app_generator" to
better describe what this directory holds. It is both custom Rails
templates, as well as, generator files.
c8a7ad7
Commits on Aug 29, 2014
@cupakromer cupakromer Use feature checks for the rails_helper generator.
To help future proof changes in Rails, toggle on feature checks instead
of the Rails version. Use this in the specs as well.

Simplify the case where `ActiveRecord` is not available, by checking for
all options at onice instead of trying to toggle on a feature or Rails
version.
9c1523d
@cupakromer cupakromer Note new behavior in Changelog. 9a49bc4
@cupakromer cupakromer Include acceptance smoke task for job generator. 49c8a30
@cupakromer cupakromer Fix constant reference. cf2ef07
@cupakromer cupakromer Merge pull request #1150 from rspec/remove-fixtures-on-no-ar
Remove `ActiveRecord` based settings from generated `rails_helper`
953750d
@cupakromer cupakromer Remove warning configuration from spec_helper.rb
Resolve #1162

In RSpec 3.0, `rspec --init` added `--warnings` to `.rspec`. This wasn't
a good decision and many users asked how to get rid of the metric ton of
warnings they were getting from rails, gems, etc, so we've changed it so
that it'll be in the generated `spec_helper.rb` instead, in the
commented out section, so that users have to op-in to it.

However, many gems used by Rails apps are not warning free. Leaving this
config option turned on by default in the `spec_helper.rb` configuration
will continue to cause issues for many users.

This completely removes the setting from the generated `spec_helper.rb`,
along with the comment suggesting it is recommended to be enabled. We do
not suggest that it is enabled for Rails apps by default.
b94729b
@cupakromer cupakromer Include warning change in Changelog.
[ci skip]
9cf4329
@cupakromer cupakromer Merge pull request #1163 from rspec/remove-warnings-from-spechelper
Remove warning configuration from spec_helper.rb
b7b22ed
Commits on Aug 30, 2014
@cupakromer cupakromer Update constructor to handle parent changes.
Previously there was no constructor for the `ExampleGroup`. This changed
with rspec/rspec-core#1687. Instead of exactly matching the contructor,
use the standard Ruby argument catch-all to simply delegate up the
chain.
e345762
@cupakromer cupakromer Merge pull request #1164 from rspec/fix-core-issue-1687-changes
Update constructor to handle parent changes.
f6e1430
Commits on Sep 03, 2014
@myronmarston myronmarston Fix typo in PR number in changelog.
[ci skip]
b7c4369
Commits on Sep 04, 2014
@gruen gruen "It's" rampantly incorrect.
[ci skip]
d0c3ae1
@cupakromer cupakromer Merge pull request #1167 from gruen/readme-typo-fix
"It's" rampantly incorrect.

[ci skip]
8649f0d
Commits on Sep 05, 2014
@myronmarston myronmarston 3.1.0 release. bd7aac1
@myronmarston myronmarston Bump version to 3.2.0.pre. b4384f9
Commits on Sep 11, 2014
@samphippen samphippen Explicitly create pathnames in sanity_check_spec.rb
This is so that we can return strings *or* pathnames from
RSpec::Core::RubyProject.root
0c088b6
@cupakromer cupakromer Merge pull request #1168 from rspec/samphippen/enhancement/sanity_che…
…ck_pathname

Explicitly create pathnames in sanity_check_spec.rb
2d5f3f0
Commits on Sep 18, 2014
@createdbypete createdbypete Consistently use single quotes for rails_helper template 0cfbe47
@JonRowe JonRowe Merge pull request #1176 from createdbypete/consistent-use-of-quotes
Consistently use single quotes for rails_helper template
a679dc5
Commits on Sep 26, 2014
@JonRowe JonRowe Updated travis build scripts (from rspec-dev) 8e692ef
@cupakromer cupakromer Merge pull request #1178 from rspec/update-travis-build-scripts-2014-…
…09-26-for-master

Updates from rspec-dev (2014-09-26)
c3fb3b9
@cupakromer cupakromer Add Ruby 2.1.3 to build matrix. 6ef5fd2
Commits on Sep 29, 2014
@cupakromer cupakromer Bump to Rails 4.2.0.beta2 142578d
Commits on Oct 06, 2014
@takashi takashi add preview generator to mailer generator 5624532
@takashi takashi check if ActionMailer::Preview exists 26f19b9
Commits on Oct 07, 2014
@takashi takashi fix typo b081878
@JonRowe JonRowe Merge pull request #1186 from takashi/fix-typo
fix typo
dc294f6
Commits on Oct 10, 2014
@takashi takashi add config.action_mailer.preview_path
when rails rspec:install is run
dc11b76
Commits on Oct 14, 2014
@elenasharma elenasharma Correct README pluralization of API to APIs from API's. 43ed34a
@cupakromer cupakromer Merge pull request #1193 from elenasharma/correct_API_pluralization_R…
…EADME

Correct README pluralization of API to APIs from API's.

[ci skip]
b9027c1
Commits on Oct 16, 2014
@JonRowe JonRowe manually tag request specs to aid users 44c9334
@JonRowe JonRowe manually tag type examples 31fe4d0
@JonRowe JonRowe modify features blurb 996bef8
@JonRowe JonRowe update or add wording indicating the use of `:type` tagging and our p…
…reference for it over inferring location
eabf9bc
Commits on Oct 17, 2014
@JonRowe JonRowe Merge pull request #1190 from rspec/update_request_docs
manually tag request specs to aid users
211f526
Commits on Oct 28, 2014
@espadrine espadrine Readme: Use an SVG badge.
That way, both badges will have the same design. Also, they'll look good even on retina displays.
c147254
@cupakromer cupakromer Merge pull request #1196 from espadrine/patch-1
Readme: Use an SVG badge.

[ci skip]
77fb5c4
Commits on Oct 30, 2014
@myronmarston myronmarston Updated travis build scripts (from rspec-dev) 2785d7b
Commits on Oct 31, 2014
@cupakromer cupakromer Update custom scripts to match rspec-dev changes. dc51972
@cupakromer cupakromer Update travis matrix as well. 55975a4
@myronmarston myronmarston Merge pull request #1199 from rspec/update-travis-build-scripts-2014-…
…10-30-for-master

Updates from rspec-dev (2014-10-30)
0e7b770
Commits on Nov 05, 2014
@glittershark glittershark Use context in controller spec for scaffolds
Use `context` instead of `describe` for the valid/invalid param
contexts in the controller spec template for the scaffold generator.
This seems like it better follows BDD practices.
7b9f7d4
@JonRowe JonRowe Merge pull request #1204 from glittershark/context-in-controller-scaf…
…fold-spec

Use context in controller spec for scaffolds
6ab7c47
@JonRowe JonRowe changelog for #1204
[skip ci]
fe07b55
Commits on Nov 07, 2014
@glittershark glittershark Use #method syntax in controller spec, to match doc
Use 'GET #index' instead of 'GET index', etc. in the scaffold controller
spec, to match the [sample controller specs in the README][1]

[1]: https://github.com/rspec/rspec-rails#controller-specs
6ea6dbf
@glittershark glittershark Use #method syntax in standalone controller spec
Use `#method` syntax in the generator for the standalone controller
spec, to match the documentation.

/cc @cupakromer
bcfa096
@glittershark glittershark Add line in changelog for #1206 [ci skip] 059cd0d
@cupakromer cupakromer Merge pull request #1206 from glittershark/controller-spec-method-syntax
Use #method syntax in controller spec, to match doc
a25c042
Commits on Nov 12, 2014
@dideler dideler Remove History.md
The changelog now exists at the root of the project, not at
features/Changelog.md.

[skip ci]
2a41acb
@JonRowe JonRowe Merge pull request #1215 from dideler/remove-outdated-history.md
Remove History.md
ead953c
Commits on Nov 13, 2014
@dideler dideler Remove Upgrade.md
- It points to a non-existent location
- There's an upgrade section in the project's README

[skip ci]
0c2ccad
@JonRowe JonRowe Merge pull request #1216 from dideler/remove-outdated-upgrade.md
Remove Upgrade.md
2a7b518
Commits on Nov 15, 2014
@JonRowe JonRowe Updated travis build scripts (from rspec-dev) 7e3eb34
Commits on Nov 16, 2014
@cupakromer cupakromer Merge pull request #1220 from rspec/update-travis-build-scripts-2014-…
…11-15-for-master

Updates from rspec-dev (2014-11-15)
4489b8a
@cupakromer cupakromer Fix failing builds on Rails 4.2.0-beta
Rails updated the way route generation errors are raised. Specifically,
this applies only to internal server code which generates a route and
not routes passed in from a request. This change comes from
rails/rails#16229. In a nutshell, the change is
`ActionController::UrlGenerationError` no longer inherits from
`ActionController::RoutingError`.

This updates the cukes which expect the unknown routes used in the
internal rails controller code to raise the correct base error
`UrlGenerationError`.

The current routing matchers do not require updating as they do not rely
on the internal route generation code. Instead they are utilizing the
routing engine's path for parsing routes passed from requests. This
path still raises a `ActionController::RoutingError`.
1cef609
@cupakromer cupakromer Add more local ignore files.
Allows for multiple `.rails-versionX` files to exist so developers can
easily symlink the root `.rails-version` instead of modifying its
contents.

Ignores the `specs.out` generated when running the full build script.

[ci skip]
2e8cba4
@cupakromer cupakromer Eliminate scrolling in cuke examples. c034b86
@cupakromer cupakromer Verify that the newer `UrlGenerationError` exists.
Ensure we use the proper error based on the Rails version, by check for
it's presence.
18e40b9
@cupakromer cupakromer Merge pull request #1222 from rspec/update-ignored-files
Add more local ignore files.
f13d5e9
@cupakromer cupakromer Ignore Rails 3.0.x on Ruby 2.1.4
This was missing when Ruby 2.1.4 was added.
b3c3fce
Commits on Nov 17, 2014
@cupakromer cupakromer Merge pull request #1221 from rspec/fix-4-2-failures
Fix failing builds on Rails 4.2.0-beta
dd72e25
@cupakromer cupakromer Reduce build matrix from 81 jobs to 36.
The build matrix is getting way too large. Even with the high
parallelization of the matrix it still takes 2.5+ hours of real time to
complete.

With the release of Ruby 2.1.5 we see the build matrix grow by another
nine combinations, increasing from 72 to 81 jobs. While Ruby 2.1 tends
to run faster, it still is more time to wait.

Currently, there has not been a Ruby 2.1.x specific bug reported for any
of the 2.1 releases. Ruby it attempting to follow close to SemVer for
the 2.1+ releases. With this change, I feel it is relatively safe to
adopt this lighter build matrix.

If an issue does appear which is specific to a single 2.1.x release, we
can easily add it back. If it only occurs with a specific Rails version
then we can use the `include` feature to only add back as few jobs as
necessary.
227b9f0
@eliotsykes eliotsykes Forward port pull request #1194 from eliotsykes:patch-1
Changed to '~> 3.0' as requested

Resolve #1224

[ci skip]
9b204f9
Commits on Nov 23, 2014
@sevenseacat sevenseacat Make sure the `rspec:feature` generator generates code that works whe…
…n monkey-patching is disabled
2220cf5
@cupakromer cupakromer Merge pull request #1231 from karpah/disable_monkey_patching_generati…
…ng_features

Make sure the `rspec:feature` generator generates code that works when monkey-patching is disabled

[ci skip]
52b46f1
@cupakromer cupakromer Update changelog with fix from #1231.
:heart: for the patches!

[ci skip]
03f3e14
@cupakromer cupakromer Merge pull request #1223 from rspec/reduce-build-matrix
Reduce build matrix from 81 jobs to 36.

[ci skip]
3fb9adc
Commits on Nov 25, 2014
@JonRowe JonRowe Badges are crisper as svg
[skip ci]
998f377
@JonRowe JonRowe Merge pull request #1234 from rspec/badges_as_svg
Switch readme badges to svg
ee48765
@cupakromer cupakromer Merge pull request #1185 from takashi/add-preview-generator-to-mailer…
…-generator

add preview generator to mailer generator
f7a33b3
Commits on Nov 27, 2014
@cupakromer cupakromer Temporarily Lock the arel version.
Rails <4.2.0.beta4 does not properly handle the changes in Arel 6.0.0.
Until beta5 is released we need to lock the version down so the builds
pass.
b76bb81
Commits on Nov 28, 2014
@cupakromer cupakromer Bump to Rails 4.2.0.rc release line.
Locking `arel` is no longer necessary as the RC1 release has the proper
fixed arel call. However, it requires `rails-dom-testing` 1.0.5+ which
fails for us on Travis CI (linux). This allows the Rails 4.2.0 envs to
fail without killing the build, until `rails-dom-testing` is fixed.

See rails/rails-dom-testing#28
9f40ab4
@cupakromer cupakromer Properly ignore 4.2 on Ruby 1.9.2 & 1.8.7 71e0522
Commits on Dec 25, 2014
@yujinakayama yujinakayama Use i18n gem < 0.7.0 under Ruby 1.9.3
i18n 0.7.0 no longer supports Ruby < 1.9.3.

https://github.com/svenfuchs/i18n/blob/v0.7.0/i18n.gemspec#L21
bc530a4
Commits on Dec 27, 2014
@myronmarston myronmarston Updated travis build scripts (from rspec-dev) 523194a
@yujinakayama yujinakayama Fix failing scenario caused by a behavior of Rail.root with symlink
The failing scenario was caused by a change in Rails that affects
Rails.root when a Rails::Application is defined in symlinked file.

rails/rails#17782

We've been set up Aruba workspace in each Cucumber scenario with
symlinks, but this tends to behave differently from real files.
Since the example_app project is not so large, we can simply clone it in
each scenario.
440815a
@yujinakayama yujinakayama Remove strange conditional in generate:app task
The `bindir` is rspec-rails' one. We want to run `bundle binstubs` in
the `tmp/example_app` project so the conditional `if test, 'd', bindir`
is useless.
b3b3306
@cupakromer cupakromer Merge pull request #1256 from rspec/update-travis-build-scripts-2014-…
…12-26-for-master

Updates from rspec-dev (2014-12-26)

[ci skip]
ba3d5b6
@cupakromer cupakromer Merge pull request #1257 from rspec/fix-build
Fix Ruby 1.9.3 and Rails 4.1 builds
a50a112
Commits on Dec 28, 2014
@benmoss benmoss Updated travis build scripts (from rspec-dev) 2c59ffa
@myronmarston myronmarston Merge pull request #1258 from benmoss/update-travis-build-scripts-201…
…4-12-27-for-master

Updated travis build scripts (from rspec-dev)
6cabdac
@cupakromer cupakromer Update supported RSpec versions.
Rails 4.2.0 has been officially released. Drop usage of the RC line and
use the main releases.

Rails `master` is now targeting Rails 5.x. Plans for Rails 5.x support
with RSpec is not official yet. Until we determine our planned support
line drop support for Rails `master` on rspec-rails `master`.
3724ca0
@cupakromer cupakromer Start supporting Ruby 2.2 5de1bef
@cupakromer cupakromer Rails 4.2.0 must pass now. 92ca950
@cupakromer cupakromer Merge pull request #1259 from rspec/build-matrix-update-rails-4_2
Update supported RSpec versions.
a13ed43
@cupakromer cupakromer Force generators to abort if they fail.
Rails does not seem to provide a clean way to abort something if a
generator fails. Under most circumstances this is probably the proper
solution.

However, for us, these generators calls also function as smoke tests for
our actual generator code. If one of them fails, we need to fail the
build. Thankfully, if the generator had a problem the status is captured
in `$?`. We can verify that the last process was successful and abort
when it is not; thus failing the build and notifying the team.
2fd7b70
@cupakromer cupakromer Fix broken generator.
The generator was failing due to the missing require.
860319e
@cupakromer cupakromer Configure Action Mailer `preview_path` in railtie
This mirrors how Rails sets up the default `preview_path`. Using a
`before_initialize` allows the environments to be loaded but shims in
before Rails sets up its `test/` default.
1580b7a
@cupakromer cupakromer Remove old implementation of setting the path. fdc66ac
@cupakromer cupakromer Note ActionMailer preview updates in Changelog. 7764882
@cupakromer cupakromer Fix how Rails 4.1 handles showing previews. e4923e6
@cupakromer cupakromer Remove skipped spec.
This is being tested via the rake task which uses the generated example
app. It would be nice to have a lighter weight method of testing the
railties in the main RSpec suite, until then keeping this :skull: spec
around just clutters the code base.
428872d
@cupakromer cupakromer Merge pull request #1236 from rspec/move-preview_path-default
Move preview path default
49a20ab
Commits on Dec 29, 2014
@eliotsykes eliotsykes Display previously hidden RSpec generators in generator usage docs ou…
…tput by 'rails g'
11a56b5
@cupakromer cupakromer Handle feature specs without Capybara.
When Capybara has not been loaded the RSpec suite fails with syntax
errors on `feature` and `scenario`. While Capybara is an external gem
dependency, rspec-rails is so tightly coupled with it, necessitating
some basic support for the syntax.

This adds coverage for both the external documentation cukes and the
Rails app smoke specs. To prevent RSpec from raising confusing syntax
errors when Capybara is not available we shim on top of the basic
syntax: `feature` and `scenario`. Without both of these we receive
syntax failures with basic feature specs.

Since RSpec does not support the reset of the Capybara methods / DSL the
specs are skipped by default. A helpful message about using Capybara is
displayed when skipped.

Updates the cuke to match changes from #1231. This uses the `RSpec`
namespace for calling `feature`. It also adds the `:type => :feature`
metadata. rspec-rails needs to hook into feature example groups, this
change ensures that happens by setting the appropriate `:type`.

While Capybara does include the `:type` metadata automatically it may
not always. Most of the Capybara related hooks actually rely on the
metadata: `:capybara_feature => true`.
fbbe1e2
@cupakromer cupakromer Fix up documentation spacing for web display. d4683c6
@cupakromer cupakromer Observers were removed in Rails 4.0
Observers still exist but are in an external gem:

    https://github.com/rails/rails-observers
eee632d
@cupakromer cupakromer Handle Capybara < 2.4.x with zero monkey patching.
Capybara 2.2.x and 2.3.0 do not properly handle RSpec no monkey patching
mode. Unfortunately, proper support in Capybara was only added in
2.4.0. However, rspec-rails claims to support Capybara >= 2.2.0 so we need
inform the user of this mismatch.
4184d68
@cupakromer cupakromer Update changelog with fix. 1a9e66b
@cupakromer cupakromer Merge pull request #1261 from rspec/improve-feature-ux
Improve feature ux
c94dd6c
@cupakromer cupakromer Merge pull request #1248 from eliotsykes/unhide-generators-from-rails-g
Display previously hidden RSpec generators in generator usage docs output by 'rails g'
3d8a232
@cupakromer cupakromer Update Changelog with `rails g` changes in #1248.
TestUnit gets special treatment when it comes to the generators listed
when running `rails generate`. Since it is not set as the test framework
until much later in the startup process all of it's generators can be
seen. Unfortunately, when RSpec hooks into the Railtie we don't have the
option of deferring until later. This hid all of the available RSpec
generators.

This change allows users to see and run the default generators
standalone. While this isn't a common practice, it is sometimes useful
when certain components are manually created outside of
`rails g COMPONENT`.

[ci skip]
3e88cdc
@cupakromer cupakromer Test Rail 4.0.x with Ruby 2.2.x ac419d6
Commits on Dec 30, 2014
@cupakromer cupakromer Support using an older Minitest gem on Ruby 2.2 999ebb7
@cupakromer cupakromer Merge pull request #1264 from rspec/ruby-2_2-on-rails-4_0
Ruby 2.2 on Rails 4.0 support
1c78c29
@cupakromer cupakromer Note support for Ruby 2.2 with Rails 4.x fe7bf65
@cupakromer cupakromer Only define `:feature` alias if it's not available
It is possible that Capybara is required before the
`FeatureExampleGroup`. It is also possible another gem or a custom
`feature` implementation is already availble. This does not define our
custom alias if `RSpec.feature` already exists.
e534d51
@cupakromer cupakromer Be more specific the related configuration option. 12d915e
Commits on Dec 31, 2014
@cupakromer cupakromer Do not override existing custom `feature` aliases.
It's possible that a user has their own custom `feature` alises which
has already been loaded. If we detect the alias we shouldn't write our
own.
0192401
@cupakromer cupakromer Set Capybara metadata.
This lets us hook into the expanded Caybara DSL once Capybara is loaded.
This is most helpful for apps in the process of upgrading and moving to
no monkey patching. This allows us to parse the specs successfully with
the expanded DSL while when the user hasn't upgraded Capybara.
cb69a9e
@cupakromer cupakromer Reset Capybara's monkey patch on old versions.
Apps just upgrading to RSpec 3 are more likely to have several
conditions which may cause a poor user experience:

- Version of Capybara prior to 2.4.0
- Loading Capybara before rspec-rails in `spec/spec_helper.rb`
- Not enabling monkey patch mode or have set:

  `config.expose_dsl_globally = false`

When these conditions are all met our `feature` alias is exposed
globally overwriting the Capybara monkey patch. This will cause all
feature specs to be skipped.

For a user attempting to upgrade an app this can be a very frustrating,
and confusing, "bug".
56117e7
@cupakromer cupakromer Merge pull request #1265 from rspec/fix-load-order-issue
Fix load order issue
8b897e1
@cupakromer cupakromer Update gemspec capping Rails at 4.2
According to the Rails blog the 4.2 release is the last in the 4.x line.
Plans for Rails 5.x support are still in the works and may not be on
rspec-rails 3.x.

To inform users and prevent accidental usage this limits the allowed
Rails versions in the gemspec.

- http://weblog.rubyonrails.org/2014/12/19/Rails-4-2-final/
18a8760
Commits on Jan 01, 2015
@cupakromer cupakromer Merge pull request #1266 from rspec/limit-rails-versions
Update gemspec capping Rails at 4.2
5a52c8b
Commits on Jan 02, 2015
@yujinakayama yujinakayama Fix error with inheritance of outer group's anonymous controller
This fixes an error raised with the following spec:

```
require 'rails_helper'

describe ApplicationController do
  controller do
    def index
      head status
    end
  end

  context 'when #status returns 200' do
    controller(controller_class) do
      def status
        200
      end
    end

    it 'returns status 200' do
      expect(get(:index).status).to eq(200)
    end
  end
end
```

and run:

```
$ bundle exec rspec
F

Failures:

  1) ApplicationController when #status returns 200 returns status 200
     Failure/Error: Unable to find matching line from backtrace
     ArgumentError:
       '#<class:0x007fdad27a6340>' is not a supported controller name. This can lead to potential routing problems. See http://guides.rubyonrails.org/routing.html#specifying-a-controller-to-use
     # /Users/me/.rbenv/versions/2.2.0/lib/ruby/gems/2.2.0/gems/actionpack-4.1.8/lib/action_dispatch/routing/mapper.rb:249:in `default_controller_and_action'
     # /Users/me/.rbenv/versions/2.2.0/lib/ruby/gems/2.2.0/gems/actionpack-4.1.8/lib/action_dispatch/routing/mapper.rb:117:in `normalize_options!'
     # /Users/me/.rbenv/versions/2.2.0/lib/ruby/gems/2.2.0/gems/actionpack-4.1.8/lib/action_dispatch/routing/mapper.rb:65:in `initialize'
```
f4c3b50
@cupakromer cupakromer Merge pull request #1260 from rspec/fix-error-with-anonymous-controll…
…er-inheritance

Fix error with inheritance of outer group's anonymous controller
90d21b4
Commits on Jan 08, 2015
@myronmarston myronmarston Updated travis build scripts (from rspec-dev) 5a5b294
@JonRowe JonRowe Merge pull request #1271 from rspec/update-travis-build-scripts-2015-…
…01-07-for-master

Updates from rspec-dev (2015-01-07)
787a502
Commits on Jan 09, 2015
@myronmarston myronmarston Updated travis build scripts (from rspec-dev) 7dbecab
@cupakromer cupakromer Merge pull request #1272 from rspec/update-travis-build-scripts-2015-…
…01-08-for-master

Updates from rspec-dev (2015-01-08)
f2af9a2
Commits on Jan 13, 2015
@cupakromer cupakromer Fix failing cuke with new rspec-core changes. 4555156
@cupakromer cupakromer Merge pull request #1278 from rspec/fix-failing-spec-suite
Fix failing cuke with new rspec-core changes.

[ci skip]
87396b7
Commits on Jan 15, 2015
@cupakromer cupakromer Prepare to support Ruby 2.2 on Rails 3.2.22+
This is in preparation for the next patch release. Similar steps are
being taken by Rails core. See:

rails/rails@8f92edb
8f50415
Commits on Jan 16, 2015
@cupakromer cupakromer Turn off Test::Unit's autorun.
Test::Unit "helpfully" sets up autoload for its `AutoRunner`.  While we
do not use reference it directly, when we load the `TestCase` classes
from ActiveSupport, AS kindly references `AutoRunner` for everyone.

We need to pre-emptively load 'test/unit' and make sure the version
installed has `AutoRunner` (the 3.x line does so far). If so, we turn it
off.
e53c23e
@cupakromer cupakromer Update change log with issue.
Fix grammar in code comment.

[ci skip]
70190b8
@cupakromer cupakromer Merge pull request #1277 from rspec/support-ruby-2-2-on-rails-3-2
Prepare to support Ruby 2.2 on Rails 3.2.22+
0cf76eb
Commits on Jan 17, 2015
@cupakromer cupakromer Load our adapters and extensions first.
Ensure that our adapters and extensions are early in the load process.
This way we can be sure that all adjustments to the Rails libs are
available when we our code that depends on Rails.
685567d
@cupakromer cupakromer Include details on how to run against `master`.
A very common issue is when a user attempts to run against the `master`
branch. Simply pointing to `master` doesn't work. This adds the steps
necessary to use `master`.

We need all of the repos in order to also satisfy any other gems which
may have a dependency on the `rspec` gem.

[ci skip]
ecc7cad
@cupakromer cupakromer Merge pull request #1280 from rspec/help-for-running-master
Include details on how to run against `master`.
b17d143
@brkane brkane Update RailsVersions.md with recent Rails versions
Updating with recent Rails versions.

[ci skip]
1de1aa2
@cupakromer cupakromer Cache bundle directory.
This also re-orders the listing of the settings to align with the
`rspec-dev` order. This makes manually comparing the files easier.
6de5f9e
Commits on Jan 18, 2015
@cupakromer cupakromer Merge pull request #1283 from rspec/update-travis-settings
Cache bundle directory.
d22459f
@cupakromer cupakromer Merge pull request #1281 from rspec/load-order-update
Load our adapters and extensions first.
b982c23
@brkane brkane Add entry for Rails 4.2 to RailsVersions.md 2b743e3
@cupakromer cupakromer Merge pull request #1285 from brkane/railsversions-doc-update
Update RailsVersions.md with recent Rails versions

[ci skip]
a04bcad
@JonRowe JonRowe use new rspec-mocks feature to verify active_record columns 7df9542
@JonRowe JonRowe move active record configuration into separate file ac3be97
Commits on Jan 19, 2015
@JonRowe JonRowe Merge pull request #1238 from rspec/verifying_doubles_on_rspec_rails
Make `instance_double` et al work with ActiveRecord columns.
0fb5483
Commits on Jan 23, 2015
@tinynumbers tinynumbers If a view example's description contains no path elements, then do no…
…t attempt to load a helper based on the example description.
155dda5
Commits on Jan 29, 2015
@cupakromer cupakromer Update Changelog with #1238. [ci skip] bf77c3a
@cupakromer cupakromer Update Changelog description. [ci skip] 3f87031
Commits on Feb 01, 2015
@mikeastock mikeastock Change type meta tag in templates to Hash 1.9 syntax
Added a feature check that uses the Rails version to decide if we can
use 1.9 hash syntax for our generatored specs
a3a45f2
Commits on Feb 02, 2015
@oliveiraethales oliveiraethales Update directory structure documentation
The website docs were not considering that request specs could also be
located inside a folder named 'integration' or 'api'.
9b95757
@cupakromer cupakromer Merge pull request #1293 from oliveiraethales/doc-update-requests-dir
Update directory structure documentation [ci skip]
e151115
@cupakromer cupakromer Merge pull request #1292 from mikeastock/hash_1_9_syntax_template
Change type meta tag in templates to Hash 1.9 syntax
03f28f8
@cupakromer cupakromer Update Changelog with #1292. [ci skip] b1ceb0c
@cupakromer cupakromer Remove unnecessary code :skull:
The matchers no longer attempt to use `AssertionFailedError` instead
they use `ActiveSupport::TestCase::Assertion`.

Fix #1294
f9676ae
@cupakromer cupakromer Merge pull request #1295 from rspec/fix-issue-1294
Remove unnecessary code :skull:
7af543c
@cupakromer cupakromer Remove extra "when" [ci skip] ffb5ed7
Commits on Feb 03, 2015
@myronmarston myronmarston Update changelog for v3.2.0 [ci skip] 8274f5f
@myronmarston myronmarston Release 3.2.0 c953d18
@myronmarston myronmarston Bump version to 3.3.0.pre 99b1a6c
Commits on Feb 09, 2015
@myronmarston myronmarston Updated travis build scripts (from rspec-dev) 1ae479c
Commits on Feb 10, 2015
@cupakromer cupakromer Add missing `require` to RSpec generator root
Fix #1301.

This fixes an issue where Rail's autoload does not find it in some
environments.
d40216e
@cupakromer cupakromer Merge pull request #1303 from rspec/update-travis-build-scripts-2015-…
…02-08-for-master

Updates from rspec-dev (2015-02-08)
f4bf5ed
@JonRowe JonRowe Merge pull request #1305 from rspec/fix-generator-dep
Add missing `require` to RSpec generator root
caf9d62
Commits on Feb 13, 2015
@tonyta tonyta adds test for be_routable matcher description 70f29f5
@davydovanton davydovanton Replace &block in arguments to yield construction ffea148
@tonyta tonyta defines BeRoutableMatcher#description
overrides RSpec::Matchers::BuiltIn::BaseMatcher#description to
return the description "be routable" instead of "be routable matcher"
a5042e1
Commits on Feb 14, 2015
@JonRowe JonRowe Merge pull request #1310 from tonyta/define-be_routable-description
Fix `be_routable` description -- Defines BeRoutableMatcher#description
67c6bac
@JonRowe JonRowe changelog for #1310
[skip ci]
515ed7f
Commits on Feb 21, 2015
@lucasmazza lucasmazza Relax `rails` dependency constraint to support the `4.2.x` releases.
The previous constraint would only go as up as `4.2.0`, thus making `rspec-rails`
incompatible with any of the patch releases of the rails 4.2.x series.
3e2606f
@cupakromer cupakromer Merge pull request #1318 from lucasmazza/lm-rails-4-2-1
Relax `rails` dependency constraint to support the `4.2.x` releases.
b541ac2
@cupakromer cupakromer Update Changelog with #1318.
[ci skip]
64434ff
@cupakromer cupakromer Disable the test-unit gem autorunner.
For some reason the test-unit gem loads it's autorunner by default.
Though the test-unit included with Ruby does not. The original code for
loading test-unit pre-dates widespread usage of the test-unit gem.

We took care of disabling the autorunner for Ruby 2.2+ since the
test-unit gem is now required for Rails 3.2. For older Ruby versions we
attempt to only load the `test/unit/assertions` module. When using the
`test-unit` gem however, Rails will auto require it for us, which loads
the main test-unit code, thus enabling the autorunner.
07df6bb
@cupakromer cupakromer Patch PR is merged, re-require this combination
[ci skip]
c238b91
Commits on Feb 23, 2015
@cupakromer cupakromer Merge pull request #1320 from rspec/disable-test-unit-gem-autorunner
Disable the test-unit gem autorunner.
f32c986
Commits on Feb 24, 2015
@myronmarston myronmarston Forwardport 3.2.1 release notes.
[ci skip]
8ca1675
@myronmarston myronmarston Updated travis build scripts (from rspec-dev)
2c81286
Commits on Feb 25, 2015
@voxik voxik Fix permissions. e73ad26
@cupakromer cupakromer Merge pull request #1324 from voxik/fix-presmissions
Fix permissions.
6d1b893
Commits on Mar 08, 2015
@biow0lf biow0lf Add PATCH HTTP method to scaffold routing generator. f964779
Commits on Mar 09, 2015
@JonRowe JonRowe Merge pull request #1336 from biow0lf/add_patch_method_to_scaffold_ro…
…uting

Add PATCH HTTP method to scaffold routing generator
6c8247e
@JonRowe JonRowe changelog for #1336
[skip ci]
0f4fa56
Commits on Mar 10, 2015
@cupakromer cupakromer Merge pull request #1308 from davydovanton/yield
Replace excess &block in arguments to yield construction
e28cb1a
@cupakromer cupakromer Add #1308 to the changelog [ci skip] a7ad3a0
@cupakromer cupakromer Include the benchmark from #1308. [ci skip] 6e014a9
@cupakromer cupakromer Merge pull request #1323 from rspec/update-travis-build-scripts-2015-…
…02-24-for-master

Updates from rspec-dev (2015-02-24)
9b15746
Commits on Mar 16, 2015
@myronmarston myronmarston Updated travis build scripts (from rspec-dev)
1f64130
@JonRowe JonRowe Merge pull request #1338 from rspec/update-travis-build-scripts-2015-…
…03-15-for-master

Updates from rspec-dev (2015-03-15)
df9bbc0
Commits on Mar 18, 2015
@cupakromer cupakromer Merge pull request #1289 from tinynumbers/view-example-helper-class-bug
If a view example's description contains no path elements, then do not attempt to load a helper based on the example description.
03afd47
@cupakromer cupakromer Update CHANGELOG [ci skip] f5af60f
@cupakromer cupakromer Fix action mailer preview path setup.
This removes the unnecessary warning about a preview path set to a
location other than `/spec/mailers/preview`.

This does not force `ActionMailer` to load when the Railtie runs by
removing the `defined?` check. This is necessary because the
`ActionMailer` class only loads it's settings once, after it is first
loaded. If we load the class in our Railtie any custom settings declared
in a config block in an initializer will be ignored.

An improved spec suite for the different permutations of availability of
action mailer previews is included as well.
172813d
@cupakromer cupakromer Add fix to changelog [ci skip] f61100e
@cupakromer cupakromer Merge pull request #1327 from rspec/update-action-mailer-railtie
Fix action mailer preview path setup.
fba0669
Commits on Apr 09, 2015
@orien orien Check `need_auto_run=` method is defined also 6092959
Commits on Apr 12, 2015
@orien orien extract `disable_testunit_autorun` method ffed381
Commits on Apr 15, 2015
@jgorset jgorset Provide a summary for humans d49058e
@JonRowe JonRowe Merge pull request #1354 from jgorset/patch-1
Provide a summary for humans
f1295b7
Commits on Apr 16, 2015
@cupakromer cupakromer Merge pull request #1350 from orien/test_unit_method
Check `need_auto_run=` method is defined also
32f0618
@cupakromer cupakromer Update changelog with issue #1350 [ci skip] a09a623