diff --git a/activesupport/lib/active_support/test_case.rb b/activesupport/lib/active_support/test_case.rb index 35f6c6fd90755..ed8c02ba3e803 100644 --- a/activesupport/lib/active_support/test_case.rb +++ b/activesupport/lib/active_support/test_case.rb @@ -6,7 +6,6 @@ require 'active_support/testing/pending' require 'active_support/testing/isolation' require 'active_support/core_ext/kernel/reporting' -require 'active_support/testing/garbage_collection' begin silence_warnings { require 'mocha' } @@ -39,6 +38,5 @@ def self.for_tag(tag) include ActiveSupport::Testing::Deprecation include ActiveSupport::Testing::Pending extend ActiveSupport::Testing::Declarative - include ActiveSupport::Testing::GarbageCollection end end diff --git a/activesupport/lib/active_support/testing/garbage_collection.rb b/activesupport/lib/active_support/testing/garbage_collection.rb deleted file mode 100644 index 7bf9fbafa6826..0000000000000 --- a/activesupport/lib/active_support/testing/garbage_collection.rb +++ /dev/null @@ -1,19 +0,0 @@ -module ActiveSupport - module Testing - module GarbageCollection - def self.included(base) - base.teardown :scrub_leftover_instance_variables - end - - private - - RESERVED_INSTANCE_VARIABLES = %w(@test_passed @passed @method_name @__name__ @_result).map(&:to_sym) - - def scrub_leftover_instance_variables - (instance_variables.map(&:to_sym) - RESERVED_INSTANCE_VARIABLES).each do |var| - remove_instance_variable(var) - end - end - end - end -end diff --git a/activesupport/test/test_case_test.rb b/activesupport/test/test_case_test.rb index 740c2351eac23..b6a96b2ae7c89 100644 --- a/activesupport/test/test_case_test.rb +++ b/activesupport/test/test_case_test.rb @@ -74,23 +74,5 @@ def test_true; assert true end assert_match %r{oh noes}, exception.message end - - def test_teardown_should_scrub_instance_variables - tc = Class.new(TestCase) do - def test_true; @alpha = "a"; assert_equal "a", @alpha; end - end - - test_name = 'test_true' - fr = FakeRunner.new - - test = tc.new test_name - test.run(fr) {} - - passed_var = IS_MINITEST ? :@passed : :@test_passed - ivars = test.instance_variables.map(&:to_sym) - - assert ivars.include?(passed_var), "#{passed_var} should not have been scrubbed" - assert !ivars.include?(:@alpha), "@alpha should have been scrubbed" - end end end diff --git a/activesupport/test/test_test.rb b/activesupport/test/test_test.rb index d528b90184b55..cdaf63961aa85 100644 --- a/activesupport/test/test_test.rb +++ b/activesupport/test/test_test.rb @@ -144,7 +144,7 @@ class SetupAndTeardownTest < ActiveSupport::TestCase def test_inherited_setup_callbacks assert_equal [:reset_callback_record, :foo], self.class._setup_callbacks.map(&:raw_filter) assert_equal [:foo], @called_back - assert_equal [:scrub_leftover_instance_variables, :foo, :sentinel, :foo], self.class._teardown_callbacks.map(&:raw_filter) + assert_equal [:foo, :sentinel, :foo], self.class._teardown_callbacks.map(&:raw_filter) end def setup @@ -176,7 +176,7 @@ class SubclassSetupAndTeardownTest < SetupAndTeardownTest def test_inherited_setup_callbacks assert_equal [:reset_callback_record, :foo, :bar], self.class._setup_callbacks.map(&:raw_filter) assert_equal [:foo, :bar], @called_back - assert_equal [:scrub_leftover_instance_variables, :foo, :sentinel, :foo, :bar], self.class._teardown_callbacks.map(&:raw_filter) + assert_equal [:foo, :sentinel, :foo, :bar], self.class._teardown_callbacks.map(&:raw_filter) end protected