summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--test/rubygems/test_gem_request_set_gem_dependency_api.rb25
1 files changed, 13 insertions, 12 deletions
diff --git a/test/rubygems/test_gem_request_set_gem_dependency_api.rb b/test/rubygems/test_gem_request_set_gem_dependency_api.rb
index 24cfb67c4d..959c28580f 100644
--- a/test/rubygems/test_gem_request_set_gem_dependency_api.rb
+++ b/test/rubygems/test_gem_request_set_gem_dependency_api.rb
@@ -34,21 +34,22 @@ class TestGemRequestSetGemDependencyAPI < Gem::TestCase
Gem.instance_variable_set :@ruby_version, Gem::Version.new(version)
- yield
+ begin
+ yield
+ ensure
+ Object.send :remove_const, :RUBY_ENGINE if name
+ Object.send :remove_const, new_engine_version_const if version
- ensure
- Object.send :remove_const, :RUBY_ENGINE if name
- Object.send :remove_const, new_engine_version_const if version
+ Object.send :remove_const, engine_version_const if name == 'ruby' and
+ Object.const_defined? engine_version_const
- Object.send :remove_const, engine_version_const if name == 'ruby' and
- Object.const_defined? engine_version_const
+ Object.const_set :RUBY_ENGINE, engine if engine
+ Object.const_set engine_version_const, engine_version unless
+ Object.const_defined? engine_version_const
- Object.const_set :RUBY_ENGINE, engine if engine
- Object.const_set engine_version_const, engine_version unless
- Object.const_defined? engine_version_const
-
- Gem.send :remove_instance_variable, :@ruby_version if
- Gem.instance_variables.include? :@ruby_version
+ Gem.send :remove_instance_variable, :@ruby_version if
+ Gem.instance_variables.include? :@ruby_version
+ end
end
def test_gempspec_with_multiple_runtime_deps