Use correct migration class in acceptance tests
In Rails 5.0, migration classes changed so that they were versioned: instead of inheriting from `ActiveRecord::Migration`, you inherited from `ActiveRecord::Migration[5.0]`. The old way wasn't removed, however -- that is, until Rails 5.1. Hence, our acceptance tests that use the old style no longer work under the 5.1 Appraisal.
This commit is contained in:
parent
5fec4cd4c9
commit
b310986f9a
|
@ -5,7 +5,7 @@ describe 'shoulda-matchers integrates with multiple libraries' do
|
|||
create_rails_application
|
||||
|
||||
write_file 'db/migrate/1_create_users.rb', <<-FILE
|
||||
class CreateUsers < ActiveRecord::Migration
|
||||
class CreateUsers < #{migration_class_name}
|
||||
def self.up
|
||||
create_table :users do |t|
|
||||
t.string :name
|
||||
|
|
|
@ -5,7 +5,7 @@ describe 'shoulda-matchers integrates with Rails' do
|
|||
create_rails_application
|
||||
|
||||
write_file 'db/migrate/1_create_users.rb', <<-FILE
|
||||
class CreateUsers < ActiveRecord::Migration
|
||||
class CreateUsers < #{migration_class_name}
|
||||
def self.up
|
||||
create_table :users do |t|
|
||||
t.string :name
|
||||
|
|
|
@ -3,6 +3,7 @@ require_relative 'helpers/base_helpers'
|
|||
require_relative 'helpers/command_helpers'
|
||||
require_relative 'helpers/gem_helpers'
|
||||
require_relative 'helpers/n_unit_helpers'
|
||||
require_relative 'helpers/rails_migration_helpers'
|
||||
require_relative 'helpers/rails_version_helpers'
|
||||
require_relative 'helpers/rspec_helpers'
|
||||
require_relative 'helpers/ruby_version_helpers'
|
||||
|
@ -23,6 +24,7 @@ module AcceptanceTests
|
|||
include CommandHelpers
|
||||
include GemHelpers
|
||||
include NUnitHelpers
|
||||
include RailsMigrationHelpers
|
||||
include RailsVersionHelpers
|
||||
include RspecHelpers
|
||||
include RubyVersionHelpers
|
||||
|
|
|
@ -0,0 +1,21 @@
|
|||
require_relative 'gem_helpers'
|
||||
|
||||
module AcceptanceTests
|
||||
module RailsMigrationHelpers
|
||||
include RailsVersionHelpers
|
||||
|
||||
def migration_class_name
|
||||
if rails_version >= 5
|
||||
"ActiveRecord::Migration[#{rails_version_for_migration}]"
|
||||
else
|
||||
'ActiveRecord::Migration'
|
||||
end
|
||||
end
|
||||
|
||||
private
|
||||
|
||||
def rails_version_for_migration
|
||||
rails_version.to_s.split('.')[0..1].join('.')
|
||||
end
|
||||
end
|
||||
end
|
Loading…
Reference in New Issue