* Remove Aruba and Bourne since we don't use them anymore
* Remove Rails from main Gemfile as it's already a dependency in each of
the appraisals
* Tighten dependency on Rake to 10.x
* Move dependencies shared among appraisals to Appraisals
* Ruby 2.2 removed Minitest and Test::Unit from the standard library
[[1]], [[2]]
* rspec-rails requires Test::Unit for Rails versions prior to 4.1 (which
switched to Minitest)
* This doesn't work now, because we don't have Test::Unit present in the
gem bundle
* RSpec 3.2.0 fixes this issue [[3]]
I don't really see this as a huge concern, since we were testing against
RSpec 2.99 for Rails < 4, and that has most of the changes that RSpec 3
has.
[1]: f8c6a5dc02
[2]: 96f552670d
[3]: 999ebb7c5c (diff-08d960c572ac094640dd183fa9641393R13)
debugger and byebug cannot be present in Appraisals because they only
work on specific Ruby versions, and we test against a range of Ruby
versions. Hence, they can't be present in the Rails application that
gets generated in acceptance tests, either.
Also, we don't really need web-console to be there, it's just an extra
dependency.
Currently before running unit tests we are getting auto-required before
rspec-rails is getting required. This is bad because we need to wait
until rspec-rails is loaded before injecting Shoulda::Matchers::* into
the current RSpec context, otherwise matchers that clash with
rspec-rails (such as `render_template` will get overridden).
This is happening when creating and booting the Rails application.
Bundler will auto-require any gems in the Gemfile. One of these gems is
ourselves (via the `gemspec` line). Since there aren't any dependencies
in the gemspec, there's no need for us to be in the Gemfile.
This means that we no longer have to explicit `include` Rails
ActionController template assertions in the tests for `render_template`
as they should get included automatically for us.