diff options
author | Rafael França <rafaelmfranca@gmail.com> | 2016-02-05 00:23:32 -0200 |
---|---|---|
committer | Rafael França <rafaelmfranca@gmail.com> | 2016-02-05 00:23:32 -0200 |
commit | 22af61984c9655d5c58d8a50b6d794337a045d28 (patch) | |
tree | 690624ef9047a39d2821465e65e38b48b06ddf32 | |
parent | 3be9a34e78835a8dafc3438f60afb412613773b9 (diff) | |
parent | 96fdbd3be3e6c5c57e394019e8b812da6d705769 (diff) | |
download | rails-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.rb | 2 | ||||
-rw-r--r-- | activerecord/test/cases/connection_specification/resolver_test.rb | 6 |
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({ |