From d6925b14fa2039ba2523c69e09f2ccad15e9016f Mon Sep 17 00:00:00 2001 From: Rick Olson Date: Wed, 27 Sep 2006 18:46:46 +0000 Subject: Don't undefine #class in OptionMerger [Rick] git-svn-id: http://svn-commit.rubyonrails.org/rails/trunk@5197 5ecf4fe2-1ee6-0310-87b1-e25e094e27de --- activesupport/CHANGELOG | 2 ++ activesupport/lib/active_support/option_merger.rb | 2 +- activesupport/test/option_merger_test.rb | 5 +++++ 3 files changed, 8 insertions(+), 1 deletion(-) diff --git a/activesupport/CHANGELOG b/activesupport/CHANGELOG index 570b9b0988..5784e6d922 100644 --- a/activesupport/CHANGELOG +++ b/activesupport/CHANGELOG @@ -1,5 +1,7 @@ *SVN* +* Don't undefine #class in OptionMerger [Rick] + * Hash.create_from_xml has been renamed to Hash.from_xml, alias will exist until Rails 2.0 [DHH] * alias_method_chain works with accessor= methods also. #6153 [Caio Chassot] diff --git a/activesupport/lib/active_support/option_merger.rb b/activesupport/lib/active_support/option_merger.rb index f944729bbc..e266d156ce 100644 --- a/activesupport/lib/active_support/option_merger.rb +++ b/activesupport/lib/active_support/option_merger.rb @@ -1,7 +1,7 @@ module ActiveSupport class OptionMerger #:nodoc: instance_methods.each do |method| - undef_method(method) if method !~ /^(__|instance_eval)/ + undef_method(method) if method !~ /^(__|instance_eval|class)/ end def initialize(context, options) diff --git a/activesupport/test/option_merger_test.rb b/activesupport/test/option_merger_test.rb index db32d4f6c1..0cddfe8c21 100644 --- a/activesupport/test/option_merger_test.rb +++ b/activesupport/test/option_merger_test.rb @@ -38,6 +38,11 @@ class OptionMergerTest < Test::Unit::TestCase end end + # Needed when counting objects with the ObjectSpace + def test_option_merger_class_method + assert_equal ActiveSupport::OptionMerger, ActiveSupport::OptionMerger.new('', '').class + end + private def method_with_options(options = {}) options -- cgit v1.2.3