diff --git a/.travis.yml b/.travis.yml index 4c59258e5b..9f212a1f9b 100644 --- a/.travis.yml +++ b/.travis.yml @@ -1,5 +1,7 @@ language: ruby +before_install: gem install bundler + before_script: - cd spec/dummy_app - bundle exec rake rails_admin:prepare_ci_env db:create db:migrate diff --git a/Appraisals b/Appraisals index 29daa4d770..15baa502e7 100644 --- a/Appraisals +++ b/Appraisals @@ -1,5 +1,6 @@ appraise "rails-4.0" do gem 'rails', '~> 4.0.0' + gem 'sass-rails', '~> 4.0.3' gem 'devise', '>= 3.2' gem 'test-unit' end diff --git a/Gemfile b/Gemfile index c9cce1e266..8384a2c258 100644 --- a/Gemfile +++ b/Gemfile @@ -7,8 +7,7 @@ group :mongoid do gem 'mongoid', '~> 4.0.0' gem 'mongoid-paperclip', '>= 0.0.8', require: 'mongoid_paperclip' gem 'carrierwave-mongoid', '>= 0.6.3', require: 'carrierwave/mongoid' - - gem 'refile-mongoid', '>= 0.0.1' if RUBY_VERSION >= '2.1.0' + gem 'refile-mongoid', '>= 0.0.1', platforms: [:ruby_21, :ruby_22] end group :active_record do @@ -54,7 +53,7 @@ group :test do gem 'simplecov', '>= 0.9', require: false gem 'timecop', '>= 0.5' - if RUBY_VERSION >= '2.1.0' + platforms :ruby_21, :ruby_22 do gem 'refile', '~> 0.5', require: 'refile/rails' gem 'refile-mini_magick', '>= 0.1.0' end diff --git a/gemfiles/rails_4.0.gemfile b/gemfiles/rails_4.0.gemfile index bef2e484bd..163701b3b5 100644 --- a/gemfiles/rails_4.0.gemfile +++ b/gemfiles/rails_4.0.gemfile @@ -5,15 +5,14 @@ source "https://rubygems.org" gem "appraisal", ">= 2.0" gem "devise", ">= 3.2" gem "rails", "~> 4.0.0" -gem "sass-rails", "~> 5.0" +gem "sass-rails", "~> 4.0.3" gem "test-unit" group :mongoid do gem "mongoid", "~> 4.0.0" gem "mongoid-paperclip", ">= 0.0.8", :require => "mongoid_paperclip" gem "carrierwave-mongoid", ">= 0.6.3", :require => "carrierwave/mongoid" - - gem "refile-mongoid", ">= 0.0.1" if RUBY_VERSION >= "2.1.0" + gem "refile-mongoid", ">= 0.0.1", :platforms => [:ruby_21, :ruby_22] end group :active_record do @@ -59,7 +58,7 @@ group :test do gem "simplecov", ">= 0.9", :require => false gem "timecop", ">= 0.5" - if RUBY_VERSION >= "2.1.0" + platforms :ruby_21, :ruby_22 do gem "refile", "~> 0.5", :require => "refile/rails" gem "refile-mini_magick", ">= 0.1.0" end diff --git a/gemfiles/rails_4.1.gemfile b/gemfiles/rails_4.1.gemfile index a0b2847eb6..dc33edb6cf 100644 --- a/gemfiles/rails_4.1.gemfile +++ b/gemfiles/rails_4.1.gemfile @@ -5,14 +5,12 @@ source "https://rubygems.org" gem "appraisal", ">= 2.0" gem "devise", ">= 3.2" gem "rails", "~> 4.1.0" -gem "sass-rails", "~> 5.0" group :mongoid do gem "mongoid", "~> 4.0.0" gem "mongoid-paperclip", ">= 0.0.8", :require => "mongoid_paperclip" gem "carrierwave-mongoid", ">= 0.6.3", :require => "carrierwave/mongoid" - - gem "refile-mongoid", ">= 0.0.1" if RUBY_VERSION >= "2.1.0" + gem "refile-mongoid", ">= 0.0.1", :platforms => [:ruby_21, :ruby_22] end group :active_record do @@ -58,7 +56,7 @@ group :test do gem "simplecov", ">= 0.9", :require => false gem "timecop", ">= 0.5" - if RUBY_VERSION >= "2.1.0" + platforms :ruby_21, :ruby_22 do gem "refile", "~> 0.5", :require => "refile/rails" gem "refile-mini_magick", ">= 0.1.0" end diff --git a/gemfiles/rails_4.2.gemfile b/gemfiles/rails_4.2.gemfile index 8e330fba4b..fac0acc700 100644 --- a/gemfiles/rails_4.2.gemfile +++ b/gemfiles/rails_4.2.gemfile @@ -11,8 +11,7 @@ group :mongoid do gem "mongoid", "~> 4.0.0" gem "mongoid-paperclip", ">= 0.0.8", :require => "mongoid_paperclip" gem "carrierwave-mongoid", ">= 0.6.3", :require => "carrierwave/mongoid" - - gem "refile-mongoid", ">= 0.0.1" if RUBY_VERSION >= "2.1.0" + gem "refile-mongoid", ">= 0.0.1", :platforms => [:ruby_21, :ruby_22] end group :active_record do @@ -58,7 +57,7 @@ group :test do gem "simplecov", ">= 0.9", :require => false gem "timecop", ">= 0.5" - if RUBY_VERSION >= "2.1.0" + platforms :ruby_21, :ruby_22 do gem "refile", "~> 0.5", :require => "refile/rails" gem "refile-mini_magick", ">= 0.1.0" end diff --git a/lib/rails_admin/config/fields.rb b/lib/rails_admin/config/fields.rb index b3b6e4a73f..33e84a2a2d 100644 --- a/lib/rails_admin/config/fields.rb +++ b/lib/rails_admin/config/fields.rb @@ -82,5 +82,5 @@ def self.register_factory(&block) require 'rails_admin/config/fields/factories/paperclip' require 'rails_admin/config/fields/factories/dragonfly' require 'rails_admin/config/fields/factories/carrierwave' -require 'rails_admin/config/fields/factories/refile' if RUBY_VERSION >= '2.1.0' +require 'rails_admin/config/fields/factories/refile' require 'rails_admin/config/fields/factories/association' diff --git a/lib/rails_admin/config/fields/types/all.rb b/lib/rails_admin/config/fields/types/all.rb index 7598f9d981..0099d8a142 100644 --- a/lib/rails_admin/config/fields/types/all.rb +++ b/lib/rails_admin/config/fields/types/all.rb @@ -10,7 +10,7 @@ require 'rails_admin/config/fields/types/file_upload' require 'rails_admin/config/fields/types/paperclip' require 'rails_admin/config/fields/types/carrierwave' -require 'rails_admin/config/fields/types/refile' if RUBY_VERSION >= '2.1.0' +require 'rails_admin/config/fields/types/refile' require 'rails_admin/config/fields/types/float' require 'rails_admin/config/fields/types/has_and_belongs_to_many_association' require 'rails_admin/config/fields/types/has_many_association' diff --git a/spec/controllers/rails_admin/main_controller_spec.rb b/spec/controllers/rails_admin/main_controller_spec.rb index b0610fa823..a4f77b8c80 100644 --- a/spec/controllers/rails_admin/main_controller_spec.rb +++ b/spec/controllers/rails_admin/main_controller_spec.rb @@ -325,7 +325,7 @@ class TeamWithNumberedPlayers < Team field :paperclip_asset do delete_method :delete_paperclip_asset end - field :refile_asset if RUBY_VERSION >= '2.1.0' + field :refile_asset if defined?(Refile) end controller.params = HashWithIndifferentAccess.new( 'field_test' => { @@ -338,7 +338,7 @@ class TeamWithNumberedPlayers < Team 'paperclip_asset' => 'test', 'delete_paperclip_asset' => 'test', 'should_not_be_here' => 'test', - }.merge(RUBY_VERSION >= '2.1.0' ? {'refile_asset' => 'test', 'remove_refile_asset' => 'test'} : {}), + }.merge(defined?(Refile) ? {'refile_asset' => 'test', 'remove_refile_asset' => 'test'} : {}), ) controller.send(:sanitize_params_for!, :create, RailsAdmin.config(FieldTest), controller.params['field_test']) @@ -352,7 +352,7 @@ class TeamWithNumberedPlayers < Team 'retained_dragonfly_asset' => 'test', 'paperclip_asset' => 'test', 'delete_paperclip_asset' => 'test', - }.merge(RUBY_VERSION >= '2.1.0' ? {'refile_asset' => 'test', 'remove_refile_asset' => 'test'} : {})) + }.merge(defined?(Refile) ? {'refile_asset' => 'test', 'remove_refile_asset' => 'test'} : {})) end it 'allows for polymorphic associations parameters' do diff --git a/spec/dummy_app/Gemfile b/spec/dummy_app/Gemfile index 1a7111e3ff..04ba535f10 100644 --- a/spec/dummy_app/Gemfile +++ b/spec/dummy_app/Gemfile @@ -36,8 +36,7 @@ group :mongoid do gem 'mongoid', '~> 4.0.0.beta1' gem 'mongoid-paperclip', '>= 0.0.8', require: 'mongoid_paperclip' gem 'carrierwave-mongoid', '>= 0.6.3', require: 'carrierwave/mongoid' - - gem 'refile-mongoid', '>= 0.0.1' if RUBY_VERSION >= '2.1.0' + gem 'refile-mongoid', '>= 0.0.1', platforms: [:ruby_21, :ruby_22] end gem 'carrierwave', '>= 0.8' @@ -48,7 +47,7 @@ gem 'mlb', '>= 0.7' gem 'paperclip', '>= 3.4' gem 'rails_admin', path: '../../' -if RUBY_VERSION >= '2.1.0' +platforms :ruby_21, :ruby_22 do gem 'refile', '~> 0.5', require: 'refile/rails' gem 'refile-mini_magick', '>= 0.1.0' end @@ -56,8 +55,8 @@ end # Gems used only for assets and not required # in production environments by default. group :assets do - gem 'sass-rails', '~> 4.0.0' - gem 'coffee-rails', '~> 4.0.0' + gem 'sass-rails', '~> 4.0.3' + gem 'coffee-rails', '~> 4.0' # See https://github.com/sstephenson/execjs#readme for more supported runtimes # gem 'therubyracer' diff --git a/spec/dummy_app/app/active_record/field_test.rb b/spec/dummy_app/app/active_record/field_test.rb index 1c6ef8eb74..f75e3dc3c7 100644 --- a/spec/dummy_app/app/active_record/field_test.rb +++ b/spec/dummy_app/app/active_record/field_test.rb @@ -12,5 +12,5 @@ class FieldTest < ActiveRecord::Base dragonfly_accessor :dragonfly_asset mount_uploader :carrierwave_asset, CarrierwaveUploader - attachment :refile_asset if RUBY_VERSION >= '2.1.0' + attachment :refile_asset if defined?(Refile) end diff --git a/spec/dummy_app/app/mongoid/field_test.rb b/spec/dummy_app/app/mongoid/field_test.rb index 51e1e121f5..34ff7eb097 100644 --- a/spec/dummy_app/app/mongoid/field_test.rb +++ b/spec/dummy_app/app/mongoid/field_test.rb @@ -51,7 +51,7 @@ class FieldTest dragonfly_accessor :dragonfly_asset mount_uploader :carrierwave_asset, CarrierwaveUploader - if RUBY_VERSION >= '2.1.0' + if defined?(Refile) extend Refile::Mongoid::Attachment field :refile_asset_filename diff --git a/spec/rails_admin/config/fields/base_spec.rb b/spec/rails_admin/config/fields/base_spec.rb index 370ad9c26e..2f20fc01c9 100644 --- a/spec/rails_admin/config/fields/base_spec.rb +++ b/spec/rails_admin/config/fields/base_spec.rb @@ -92,7 +92,7 @@ class CommentReversed < Tableless end end - if RUBY_VERSION >= '2.1.0' + if defined?(Refile) context 'of a Refile installation' do it 'is a _id field' do expect(RailsAdmin.config(FieldTest).fields.detect { |f| f.name == :refile_asset }.children_fields).to eq([:refile_asset_id, :refile_asset_filename, :refile_asset_size, :refile_asset_content_type]) @@ -266,7 +266,7 @@ class CommentReversed < Tableless expect(RailsAdmin.config(FieldTest).fields.detect { |f| f.name == :carrierwave_asset }.searchable_columns.collect { |c| c[:column] }).to eq(['field_tests.carrierwave_asset']) end - if RUBY_VERSION >= '2.1.0' + if defined?(Refile) it 'of refile should find the underlying column on the base table' do expect(RailsAdmin.config(FieldTest).fields.detect { |f| f.name == :refile_asset }.searchable_columns.collect { |c| c[:column] }).to eq(['field_tests.refile_asset_id']) end @@ -303,7 +303,7 @@ class CommentReversed < Tableless expect(RailsAdmin.config(FieldTest).fields.detect { |f| f.name == :carrierwave_asset }.sortable).to eq(:carrierwave_asset) end - if RUBY_VERSION >= '2.1.0' + if defined?(Refile) it 'of refile should target the first children field' do expect(RailsAdmin.config(FieldTest).fields.detect { |f| f.name == :refile_asset }.searchable).to eq(:refile_asset_id) expect(RailsAdmin.config(FieldTest).fields.detect { |f| f.name == :refile_asset }.sortable).to eq(:refile_asset_id) diff --git a/spec/rails_admin/config/fields/types/file_upload_spec.rb b/spec/rails_admin/config/fields/types/file_upload_spec.rb index 3aa051e324..c0d9a63268 100644 --- a/spec/rails_admin/config/fields/types/file_upload_spec.rb +++ b/spec/rails_admin/config/fields/types/file_upload_spec.rb @@ -18,7 +18,7 @@ expect(RailsAdmin.config(FieldTest).field(:carrierwave_asset).allowed_methods.collect(&:to_s)).to eq %w(carrierwave_asset remove_carrierwave_asset carrierwave_asset_cache) expect(RailsAdmin.config(FieldTest).field(:dragonfly_asset).allowed_methods.collect(&:to_s)).to eq %w(dragonfly_asset remove_dragonfly_asset retained_dragonfly_asset) expect(RailsAdmin.config(FieldTest).field(:paperclip_asset).allowed_methods.collect(&:to_s)).to eq %w(paperclip_asset delete_paperclip_asset) - expect(RailsAdmin.config(FieldTest).field(:refile_asset).allowed_methods.collect(&:to_s)).to eq %w(refile_asset remove_refile_asset) if RUBY_VERSION >= '2.1.0' + expect(RailsAdmin.config(FieldTest).field(:refile_asset).allowed_methods.collect(&:to_s)).to eq %w(refile_asset remove_refile_asset) if defined?(Refile) end end