Skip to content

Commit

Permalink
Merge pull request #2957 from waseem/migration_status_tests
Browse files Browse the repository at this point in the history
Tests for rake db:migrate:status.
  • Loading branch information
spastorino committed Sep 10, 2011
1 parent 082f53a commit 7317f6c
Showing 1 changed file with 24 additions and 0 deletions.
24 changes: 24 additions & 0 deletions railties/test/application/rake_test.rb
Expand Up @@ -109,6 +109,30 @@ def test_model_and_migration_generator_with_change_syntax
assert_match(/AddEmailToUsers: reverted/, output)
end

def test_migration_status_when_schema_migrations_table_is_not_present
output = Dir.chdir(app_path){ `rake db:migrate:status` }
assert_equal "Schema migrations table does not exist yet.\n", output
end

def test_migration_status
Dir.chdir(app_path) do
`rails generate model user username:string password:string`
`rails generate migration add_email_to_users email:string`
end

Dir.chdir(app_path) { `rake db:migrate`}
output = Dir.chdir(app_path) { `rake db:migrate:status` }

assert_match(/up\s+\d{14}\s+Create users/, output)
assert_match(/up\s+\d{14}\s+Add email to users/, output)

Dir.chdir(app_path) { `rake db:rollback STEP=1` }
output = Dir.chdir(app_path) { `rake db:migrate:status` }

assert_match(/up\s+\d{14}\s+Create users/, output)
assert_match(/down\s+\d{14}\s+Add email to users/, output)
end

def test_loading_specific_fixtures
Dir.chdir(app_path) do
`rails generate model user username:string password:string`
Expand Down

0 comments on commit 7317f6c

Please sign in to comment.