From a85625dacfe7782148f7566c199d562c8acb71c0 Mon Sep 17 00:00:00 2001 From: Aaron Patterson Date: Wed, 11 Jan 2012 14:53:37 -0800 Subject: instantiate our own broken migration rather than relying on the filesystem --- activerecord/test/cases/migration_test.rb | 14 +++++++++----- .../broken/100_migration_that_raises_exception.rb | 10 ---------- 2 files changed, 9 insertions(+), 15 deletions(-) delete mode 100644 activerecord/test/migrations/broken/100_migration_that_raises_exception.rb (limited to 'activerecord/test') diff --git a/activerecord/test/cases/migration_test.rb b/activerecord/test/cases/migration_test.rb index fc26e9527d..15677d80a0 100644 --- a/activerecord/test/cases/migration_test.rb +++ b/activerecord/test/cases/migration_test.rb @@ -879,16 +879,20 @@ class MigrationTest < ActiveRecord::TestCase 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 ffb224dad9..0000000000 --- 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 -- cgit v1.2.3