aboutsummaryrefslogtreecommitdiffstats
path: root/railties
diff options
context:
space:
mode:
authorRafael Mendonça França <rafaelmfranca@gmail.com>2019-01-14 18:06:01 -0500
committerRafael Mendonça França <rafaelmfranca@gmail.com>2019-01-17 16:08:32 -0500
commitf59b08119bc0c01a00561d38279b124abc82561b (patch)
treec9021170a05d15fcd067346c9ab2cb31b00232ca /railties
parent0bef23e630f62e38f20b5ae1d1d5dbfb087050ea (diff)
downloadrails-f59b08119bc0c01a00561d38279b124abc82561b.tar.gz
rails-f59b08119bc0c01a00561d38279b124abc82561b.tar.bz2
rails-f59b08119bc0c01a00561d38279b124abc82561b.zip
Change `SQLite3Adapter` to always represent boolean values as integers
Diffstat (limited to 'railties')
-rw-r--r--railties/lib/rails/application/configuration.rb4
-rw-r--r--railties/test/application/configuration_test.rb30
2 files changed, 11 insertions, 23 deletions
diff --git a/railties/lib/rails/application/configuration.rb b/railties/lib/rails/application/configuration.rb
index c2403c57a7..bc2183d75b 100644
--- a/railties/lib/rails/application/configuration.rb
+++ b/railties/lib/rails/application/configuration.rb
@@ -97,10 +97,6 @@ module Rails
if respond_to?(:active_record)
active_record.cache_versioning = true
- # Remove the temporary load hook from SQLite3Adapter when this is removed
- ActiveSupport.on_load(:active_record_sqlite3adapter) do
- ActiveRecord::ConnectionAdapters::SQLite3Adapter.represent_boolean_as_integer = true
- end
end
if respond_to?(:action_dispatch)
diff --git a/railties/test/application/configuration_test.rb b/railties/test/application/configuration_test.rb
index f2d64ce80b..0ae30e3ba6 100644
--- a/railties/test/application/configuration_test.rb
+++ b/railties/test/application/configuration_test.rb
@@ -1941,37 +1941,29 @@ module ApplicationTests
assert_equal({}, Rails.application.config.my_custom_config)
end
- test "default SQLite3Adapter.represent_boolean_as_integer for 5.1 is false" do
+ test "represent_boolean_as_integer is deprecated" do
remove_from_config '.*config\.load_defaults.*\n'
- app_file "app/models/post.rb", <<-RUBY
- class Post < ActiveRecord::Base
- end
+ app_file "config/initializers/new_framework_defaults_6_0.rb", <<-RUBY
+ Rails.application.config.active_record.sqlite3.represent_boolean_as_integer = true
RUBY
- app "development"
- force_lazy_load_hooks { Post }
-
- assert_not ActiveRecord::ConnectionAdapters::SQLite3Adapter.represent_boolean_as_integer
- end
-
- test "default SQLite3Adapter.represent_boolean_as_integer for new installs is true" do
app_file "app/models/post.rb", <<-RUBY
class Post < ActiveRecord::Base
end
RUBY
app "development"
- force_lazy_load_hooks { Post }
-
- assert ActiveRecord::ConnectionAdapters::SQLite3Adapter.represent_boolean_as_integer
+ assert_deprecated do
+ force_lazy_load_hooks { Post }
+ end
end
- test "represent_boolean_as_integer should be able to set via config.active_record.sqlite3.represent_boolean_as_integer" do
+ test "represent_boolean_as_integer raises when the value is false" do
remove_from_config '.*config\.load_defaults.*\n'
app_file "config/initializers/new_framework_defaults_6_0.rb", <<-RUBY
- Rails.application.config.active_record.sqlite3.represent_boolean_as_integer = true
+ Rails.application.config.active_record.sqlite3.represent_boolean_as_integer = false
RUBY
app_file "app/models/post.rb", <<-RUBY
@@ -1980,9 +1972,9 @@ module ApplicationTests
RUBY
app "development"
- force_lazy_load_hooks { Post }
-
- assert ActiveRecord::ConnectionAdapters::SQLite3Adapter.represent_boolean_as_integer
+ assert_raises(RuntimeError) do
+ force_lazy_load_hooks { Post }
+ end
end
test "config_for containing ERB tags should evaluate" do