Skip to content

Commit

Permalink
Updated test to ensure correct sequence when copying engine/plugin mi…
Browse files Browse the repository at this point in the history
…grations.
  • Loading branch information
BDQ committed Jun 10, 2011
1 parent 9f2e914 commit 25ad430
Showing 1 changed file with 11 additions and 4 deletions.
15 changes: 11 additions & 4 deletions railties/test/railties/shared_tests.rb
Expand Up @@ -53,6 +53,9 @@ class CreateYaffles < ActiveRecord::Migration

add_to_config "ActiveRecord::Base.timestamped_migrations = false"

boot_rails
railties = Rails.application.railties.all.map(&:railtie_name)

Dir.chdir(app_path) do
output = `bundle exec rake bukkits:install:migrations`

Expand All @@ -63,12 +66,16 @@ class CreateYaffles < ActiveRecord::Migration
assert_match /NOTE: Migration 3_create_sessions.rb from bukkits has been skipped/, output
assert_equal 3, Dir["#{app_path}/db/migrate/*.rb"].length

output = `bundle exec rake railties:install:migrations`
output = `bundle exec rake railties:install:migrations`.split("\n")

assert File.exists?("#{app_path}/db/migrate/4_create_yaffles.rb")
assert_match /NOTE: Migration 3_create_sessions.rb from bukkits has been skipped/, output
assert_match /Copied migration 4_create_yaffles.rb from acts_as_yaffle/, output
assert_no_match /2_create_users/, output
assert_no_match /2_create_users/, output.join("\n")

yaffle_migration_order = output.index(output.detect{|o| /Copied migration 4_create_yaffles.rb from acts_as_yaffle/ =~ o })
bukkits_migration_order = output.index(output.detect{|o| /NOTE: Migration 3_create_sessions.rb from bukkits has been skipped/ =~ o })
assert_not_nil yaffle_migration_order, "Expected migration to be copied"
assert_not_nil bukkits_migration_order, "Expected migration to be skipped"
assert_equal (railties.index('acts_as_yaffle') > railties.index('bukkits')) , (yaffle_migration_order > bukkits_migration_order)

migrations_count = Dir["#{app_path}/db/migrate/*.rb"].length
output = `bundle exec rake railties:install:migrations`
Expand Down

0 comments on commit 25ad430

Please sign in to comment.