diff options
author | eileencodes <eileencodes@gmail.com> | 2019-06-27 12:56:30 -0400 |
---|---|---|
committer | eileencodes <eileencodes@gmail.com> | 2019-06-27 13:07:23 -0400 |
commit | f2ad69fe7a605b01bb7c37eeac6a9b4e7deb488e (patch) | |
tree | df799c7e327a35f83da0e86a3ce4ee380cb0ee90 /activesupport/lib/active_support/notifications | |
parent | 40246125b99ed1f7d7ea869980523e50a0ec9a96 (diff) | |
download | rails-f2ad69fe7a605b01bb7c37eeac6a9b4e7deb488e.tar.gz rails-f2ad69fe7a605b01bb7c37eeac6a9b4e7deb488e.tar.bz2 rails-f2ad69fe7a605b01bb7c37eeac6a9b4e7deb488e.zip |
Fix broken url configs
This PR is to fix #36559 but I also found other issues that haven't been
reported.
The check for `(config.size == 1 && config.values.all? { |v| v.is_a?
String })` was naive. The only reason this passed was because we had
tests that had single hash size configs, but that doesn't mean we don't
want to create a hash config in other cases. So this now checks for
`config["database"] || config["adapter"] || ENV["DATABASE_URL"]`. In the
end for url configs we still get a UrlConfig but we need to pass through
the HashConfig to create the right kind of UrlConfig. The UrlConfig's
are really complex and I don't necessarily understand everything that's
needed in order to act the same as Rails 5.2.
I edited the connection handler test to demonstrate how the previous
implementation was broken when checking config size. Now old and new
tests pass so I think this is closer to 5.2.
Fixes #36559
Diffstat (limited to 'activesupport/lib/active_support/notifications')
0 files changed, 0 insertions, 0 deletions