From be70c5c8469a38b53c94b255f9425848c5e73ac8 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Jos=C3=A9=20Valim?= Date: Wed, 17 Oct 2012 19:28:02 +0200 Subject: [PATCH] Revert "clean up lazy loading of serialization support for ActiveRecord::Base and ActionController::Base" The whole idea of having a lazy hook is that it can be executed in the context of different targets. The moment you hardcode the class, the hooks can no longer run in the proper context. This reverts commit 506e2ac9ad355b78f6bc94823f2aa3f1aa73ef35. --- lib/active_model_serializers.rb | 4 ++-- test/serializer_support_test.rb | 12 ------------ 2 files changed, 2 insertions(+), 14 deletions(-) diff --git a/lib/active_model_serializers.rb b/lib/active_model_serializers.rb index 380ee1c3..33aa902b 100644 --- a/lib/active_model_serializers.rb +++ b/lib/active_model_serializers.rb @@ -57,7 +57,7 @@ module ActiveModel::SerializerSupport end ActiveSupport.on_load(:active_record) do - ActiveRecord::Base.send(:include, ActiveModel::SerializerSupport) + include ActiveModel::SerializerSupport end module ActiveModel::ArraySerializerSupport @@ -78,7 +78,7 @@ begin require 'action_controller/serialization' ActiveSupport.on_load(:action_controller) do - ActionController::Base.send(:include, ActionController::Serialization) + include ::ActionController::Serialization end rescue LoadError => ex # rails on installed, continuing diff --git a/test/serializer_support_test.rb b/test/serializer_support_test.rb index 74190fb9..2e963027 100644 --- a/test/serializer_support_test.rb +++ b/test/serializer_support_test.rb @@ -9,8 +9,6 @@ class RandomModelCollection end module ActiveRecord - class Base - end class Relation end end @@ -28,15 +26,5 @@ class SerializerSupportTest < ActiveModel::TestCase ActiveSupport.run_load_hooks(:active_record) assert_equal ActiveModel::ArraySerializer, ActiveRecord::Relation.new.active_model_serializer end - - test "it automatically includes serializer support in active_record/base" do - ActiveSupport.run_load_hooks(:active_record) - assert ActiveRecord::Base.new.respond_to?(:active_model_serializer) - end - - test "it automatically includes serializer support in action_controller/base" do - ActiveSupport.run_load_hooks(:action_controller) - assert ActionController::Base.new.respond_to?(:serialization_scope) - end end