From d9fea496afed5a35d2f79ea3cac35176966dd471 Mon Sep 17 00:00:00 2001 From: Jeremy Evans Date: Wed, 10 Mar 2021 12:09:45 -0800 Subject: [PATCH] Remove cvar overtaken classes at end of test methods Fixes issues when the same tests are executed more than once, which some CI machines do. --- test/ruby/test_variable.rb | 6 ++++++ 1 file changed, 6 insertions(+) diff --git a/test/ruby/test_variable.rb b/test/ruby/test_variable.rb index bedddf0af7..f8a7c68fd3 100644 --- a/test/ruby/test_variable.rb +++ b/test/ruby/test_variable.rb @@ -96,6 +96,9 @@ class TestVariable < Test::Unit::TestCase EORB assert_equal "class variable @@cvar of TestVariable::Child is overtaken by TestVariable::Parent", error.message + ensure + TestVariable.send(:remove_const, :Child) rescue nil + TestVariable.send(:remove_const, :Parent) rescue nil end def test_cvar_overtaken_by_module @@ -124,6 +127,9 @@ class TestVariable < Test::Unit::TestCase EORB assert_equal "class variable @@cvar of TestVariable::ParentForModule is overtaken by TestVariable::Mixin", error.message + ensure + TestVariable.send(:remove_const, :Mixin) rescue nil + TestVariable.send(:remove_const, :ParentForModule) rescue nil end class IncludeRefinedModuleClassVariableNoWarning