diff --git a/activerecord/test/cases/migration_test.rb b/activerecord/test/cases/migration_test.rb index fc26e9527d56c..15677d80a0c07 100644 --- a/activerecord/test/cases/migration_test.rb +++ b/activerecord/test/cases/migration_test.rb @@ -879,16 +879,20 @@ def test_migrator_one_up_with_exception_and_rollback skip "not supported on #{ActiveRecord::Base.connection.class}" end - assert !Person.column_methods_hash.include?(:last_name) + refute Person.column_methods_hash.include?(:last_name) - e = assert_raise(StandardError) do - ActiveRecord::Migrator.up(MIGRATIONS_ROOT + "/broken", 100) - end + migration = Struct.new(:name, :version) { + def migrate(x); raise 'Something broke'; end + }.new('zomg', 100) + + migrator = ActiveRecord::Migrator.new(:up, [migration], 100) + + e = assert_raise(StandardError) { migrator.migrate } assert_equal "An error has occurred, this and all later migrations canceled:\n\nSomething broke", e.message Person.reset_column_information - assert !Person.column_methods_hash.include?(:last_name) + refute Person.column_methods_hash.include?(:last_name) end def test_finds_migrations diff --git a/activerecord/test/migrations/broken/100_migration_that_raises_exception.rb b/activerecord/test/migrations/broken/100_migration_that_raises_exception.rb deleted file mode 100644 index ffb224dad90af..0000000000000 --- a/activerecord/test/migrations/broken/100_migration_that_raises_exception.rb +++ /dev/null @@ -1,10 +0,0 @@ -class MigrationThatRaisesException < ActiveRecord::Migration - def self.up - add_column "people", "last_name", :string - raise 'Something broke' - end - - def self.down - remove_column "people", "last_name" - end -end