Update Appraisals, remove Ruby 1.8 and 1.9.2 support

This commit is contained in:
Ryan Fitzgerald 2014-11-22 23:09:58 -08:00
parent 8ac0c422ac
commit 17e1096155
16 changed files with 56 additions and 50 deletions

View File

@ -1,17 +1,10 @@
services: mongodb
rvm:
- 1.9.2
- 1.9.3
- 2.0.0
- 2.1.2
- 2.1.5
gemfile:
- gemfiles/rails30.gemfile
- gemfiles/rails31.gemfile
- gemfiles/rails32.gemfile
- gemfiles/rails4.gemfile
matrix:
exclude:
- rvm: 1.9.2
gemfile: gemfiles/rails32.gemfile
- rvm: 1.9.2
gemfile: gemfiles/rails4.gemfile

View File

@ -10,12 +10,25 @@ appraise "rails31" do
end
appraise "rails32" do
gem "rails", "3.2.14"
gem "rails", "3.2.21"
gem "mongoid"
gem "sqlite3"
end
appraise "rails4" do
gem "rails", "4.0.0"
appraise "rails40" do
gem "rails", "4.0.12"
gem "mongoid"
gem "sqlite3"
end
appraise "rails41" do
gem "rails", "4.1.8"
gem "mongoid"
gem "sqlite3"
end
appraise "rails42" do
gem "rails", "4.2.0beta4"
gem "mongoid"
gem "sqlite3"
end

View File

@ -1,14 +0,0 @@
appraise "rails30" do
gem "rails", "3.0.15"
gem "sqlite3"
end
appraise "rails31" do
gem "rails", "3.1.6"
gem "sqlite3"
end
appraise "rails32" do
gem "rails", "3.2.6"
gem "sqlite3"
end

View File

@ -4,14 +4,6 @@ require "bundler/gem_tasks"
require "rake/testtask"
require "appraisal"
if RUBY_VERSION =~ /^1.8/
class Appraisal::File
def path
'Appraisals-1.8'
end
end
end
Rake::TestTask.new do |t|
t.libs.concat %w(pry-rails spec)
t.pattern = "spec/*_spec.rb"

View File

@ -77,15 +77,15 @@ irb(main):001:0>
# Developing and Testing
To generate Gemfiles for Rails 3.0, 3.1, 3.2, and 4.0, run
`rake appraisal:gemfiles appraisal:install`.
To generate Gemfiles for Rails 3.0, 3.1, 3.2, 4.0, 4.1, and 4.2, run `rake
appraisal:gemfiles appraisal:install`.
You can then run the tests across all four versions with `rake appraisal`.
You can also manually run the Rails console and server with `rake
appraisal console` and `rake appraisal server`.
You can then run the tests across all four versions with `rake appraisal`. You
can also manually run the Rails console and server with `rake appraisal
console` and `rake appraisal server`.
For a specific version of Rails, use `rake appraisal:rails30`, `rake
appraisal:rails31`, `rake appraisal:rails32`, or `rake appraisal:rails4`.
appraisal:rails31`, `rake appraisal:rails32`, etc.
# Alternative

View File

@ -5,4 +5,4 @@ source "http://rubygems.org"
gem "rails", "3.0.20"
gem "sqlite3"
gemspec :path=>"../"
gemspec :path => "../"

View File

@ -6,4 +6,4 @@ gem "rails", "3.1.12"
gem "mongoid"
gem "sqlite3"
gemspec :path=>"../"
gemspec :path => "../"

View File

@ -2,8 +2,8 @@
source "http://rubygems.org"
gem "rails", "3.2.14"
gem "rails", "3.2.21"
gem "mongoid"
gem "sqlite3"
gemspec :path=>"../"
gemspec :path => "../"

9
gemfiles/rails40.gemfile Normal file
View File

@ -0,0 +1,9 @@
# This file was generated by Appraisal
source "http://rubygems.org"
gem "rails", "4.0.12"
gem "mongoid"
gem "sqlite3"
gemspec :path => "../"

View File

@ -2,7 +2,8 @@
source "http://rubygems.org"
gem "rails", "4.0.0"
gem "rails", "4.1.8"
gem "mongoid"
gem "sqlite3"
gemspec :path=>"../"
gemspec :path => "../"

9
gemfiles/rails42.gemfile Normal file
View File

@ -0,0 +1,9 @@
# This file was generated by Appraisal
source "http://rubygems.org"
gem "rails", "4.2.0beta4"
gem "mongoid"
gem "sqlite3"
gemspec :path => "../"

View File

@ -75,5 +75,5 @@ begin
field :name, :type => String
embedded_in :artist
end
rescue LoadError # Mongoid doesn't support Rails 3.0 or 4.0 or Ruby 1.8
rescue LoadError # Mongoid doesn't support Rails 3.0
end

View File

@ -1,4 +1,5 @@
TestApp.routes.draw do
resource :pokemon, :beer
get 'exit' => proc { exit! }
get 'pry' => proc { binding.pry; [200, {}, ['']] }
end

View File

@ -6,7 +6,7 @@ describe "show-middleware" do
it "should print a list of middleware" do
output = mock_pry('show-middleware', 'exit-all')
output.must_match %r{\Ause ActionDispatch::Static}
output.must_match %r{^use ActionDispatch::Static$}
output.must_match %r{^use ActionDispatch::ShowExceptions$}
output.must_match %r{^run TestApp.routes\Z}
end

View File

@ -29,13 +29,14 @@ MODEL
expected = <<MODEL
Artist
_id: Moped::BSON::ObjectId
_id: BSON::ObjectId
name: String
embeds_one :beer (validate)
embeds_many :instruments (validate)
MODEL
output.gsub! /^ *_type: String\n/, '' # mongoid 3.0 and 3.1 differ on this
output.gsub! /Moped::BSON/, 'BSON' # mongoid 3 and 4 differ on this
output.must_equal expected
end
end

View File

@ -32,18 +32,19 @@ MODELS
mongoid_models = <<MODELS
Artist
_id: Moped::BSON::ObjectId
_id: BSON::ObjectId
name: String
embeds_one :beer (validate)
embeds_many :instruments (validate)
Instrument
_id: Moped::BSON::ObjectId
_id: BSON::ObjectId
name: String
embedded_in :artist
MODELS
if defined?(Mongoid)
output.gsub! /^ *_type: String\n/, '' # mongoid 3.0 and 3.1 differ on this
output.gsub! /Moped::BSON/, 'BSON' # mongoid 3 and 4 differ on this
output.must_equal [ar_models, mongoid_models].join
else
output.must_equal ar_models