aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorRafael França <rafaelmfranca@gmail.com>2016-02-05 00:23:32 -0200
committerRafael França <rafaelmfranca@gmail.com>2016-02-05 00:23:32 -0200
commit22af61984c9655d5c58d8a50b6d794337a045d28 (patch)
tree690624ef9047a39d2821465e65e38b48b06ddf32
parent3be9a34e78835a8dafc3438f60afb412613773b9 (diff)
parent96fdbd3be3e6c5c57e394019e8b812da6d705769 (diff)
downloadrails-22af61984c9655d5c58d8a50b6d794337a045d28.tar.gz
rails-22af61984c9655d5c58d8a50b6d794337a045d28.tar.bz2
rails-22af61984c9655d5c58d8a50b6d794337a045d28.zip
Merge pull request #23472 from jhubert/patch-2
Remove the assumption of schema in DATABASE_URL
-rw-r--r--activerecord/lib/active_record/connection_adapters/connection_specification.rb2
-rw-r--r--activerecord/test/cases/connection_specification/resolver_test.rb6
2 files changed, 7 insertions, 1 deletions
diff --git a/activerecord/lib/active_record/connection_adapters/connection_specification.rb b/activerecord/lib/active_record/connection_adapters/connection_specification.rb
index f633892dee..4bc6447368 100644
--- a/activerecord/lib/active_record/connection_adapters/connection_specification.rb
+++ b/activerecord/lib/active_record/connection_adapters/connection_specification.rb
@@ -33,7 +33,7 @@ module ActiveRecord
def initialize(url)
raise "Database URL cannot be empty" if url.blank?
@uri = uri_parser.parse(url)
- @adapter = @uri.scheme.tr('-', '_')
+ @adapter = @uri.scheme && @uri.scheme.tr('-', '_')
@adapter = "postgresql" if @adapter == "postgres"
if @uri.opaque
diff --git a/activerecord/test/cases/connection_specification/resolver_test.rb b/activerecord/test/cases/connection_specification/resolver_test.rb
index 3c2f5d4219..358b6ad537 100644
--- a/activerecord/test/cases/connection_specification/resolver_test.rb
+++ b/activerecord/test/cases/connection_specification/resolver_test.rb
@@ -57,6 +57,12 @@ module ActiveRecord
"encoding" => "utf8" }, spec)
end
+ def test_url_missing_scheme
+ spec = resolve 'foo'
+ assert_equal({
+ "database" => "foo" }, spec)
+ end
+
def test_url_host_db
spec = resolve 'abstract://foo/bar?encoding=utf8'
assert_equal({