aboutsummaryrefslogtreecommitdiffstats
path: root/railties/test/commands/dbconsole_test.rb
diff options
context:
space:
mode:
authorschneems <richard.schneeman@gmail.com>2013-12-21 23:09:01 -0500
committerschneems <richard.schneeman@gmail.com>2013-12-21 23:09:01 -0500
commita1f9ae5eb8b3ff6fd2f55f6518d220de1838e74f (patch)
treea79914c4333799c3f21422be75d48d7818da15f5 /railties/test/commands/dbconsole_test.rb
parent6d255b741c688671716f50008b8f0c86aab052cf (diff)
downloadrails-a1f9ae5eb8b3ff6fd2f55f6518d220de1838e74f.tar.gz
rails-a1f9ae5eb8b3ff6fd2f55f6518d220de1838e74f.tar.bz2
rails-a1f9ae5eb8b3ff6fd2f55f6518d220de1838e74f.zip
Fix DB Console tests
The build is broken: https://travis-ci.org/rails/rails/builds/15824530 This commit fixes it. The problem: Sqlite expects the `database` part to be an absolute path. That prompted this change to be committed to master: https://github.com/rails/rails/commit/fbb79b517f3127ba620fedd01849f9628b78d6ce This change provides correct behavior. Unfortunately tests were introduced in https://github.com/rails/rails/commit/971d5107cd4cd08c22a85d34546f4ba03ed5c925 that were relying on the incorrect behavior. We can avoid the fix by changing to another database url such as `mysql` or `postgresql` In addition to fixing the failure, the assertions are changed so that the "expected" value comes before "actual" value.
Diffstat (limited to 'railties/test/commands/dbconsole_test.rb')
-rw-r--r--railties/test/commands/dbconsole_test.rb42
1 files changed, 22 insertions, 20 deletions
diff --git a/railties/test/commands/dbconsole_test.rb b/railties/test/commands/dbconsole_test.rb
index a6cd6ec61d..7ad83a8b5d 100644
--- a/railties/test/commands/dbconsole_test.rb
+++ b/railties/test/commands/dbconsole_test.rb
@@ -38,36 +38,38 @@ class Rails::DBConsoleTest < ActiveSupport::TestCase
end
def test_config_with_database_url_only
- ENV['DATABASE_URL'] = 'sqlite3://foo:bar@localhost:9000/foo_test?pool=5&timeout=3000'
+ ENV['DATABASE_URL'] = 'postgresql://foo:bar@localhost:9000/foo_test?pool=5&timeout=3000'
app_db_config(nil)
- assert_equal Rails::DBConsole.new.config.sort, {
- "adapter"=> "sqlite3",
- "host"=> "localhost",
- "port"=> 9000,
- "database"=> "foo_test",
- "username"=> "foo",
- "password"=> "bar",
- "pool"=> "5",
- "timeout"=> "3000"
+ expected = {
+ "adapter" => "postgresql",
+ "host" => "localhost",
+ "port" => 9000,
+ "database" => "foo_test",
+ "username" => "foo",
+ "password" => "bar",
+ "pool" => "5",
+ "timeout" => "3000"
}.sort
+ assert_equal expected, Rails::DBConsole.new.config.sort
end
def test_config_choose_database_url_if_exists
- ENV['DATABASE_URL'] = 'sqlite3://foo:bar@dburl:9000/foo_test?pool=5&timeout=3000'
+ host = "database-url-host.com"
+ ENV['DATABASE_URL'] = "postgresql://foo:bar@#{host}:9000/foo_test?pool=5&timeout=3000"
sample_config = {
"test" => {
- "adapter"=> "sqlite3",
- "host"=> "localhost",
- "port"=> 9000,
- "database"=> "foo_test",
- "username"=> "foo",
- "password"=> "bar",
- "pool"=> "5",
- "timeout"=> "3000"
+ "adapter" => "postgresql",
+ "host" => "not-the-#{host}",
+ "port" => 9000,
+ "database" => "foo_test",
+ "username" => "foo",
+ "password" => "bar",
+ "pool" => "5",
+ "timeout" => "3000"
}
}
app_db_config(sample_config)
- assert_equal Rails::DBConsole.new.config["host"], "dburl"
+ assert_equal host, Rails::DBConsole.new.config["host"]
end
def test_env