From cbd0de84f6325a66d9d97b17073252bc0e2bb512 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?David=20Rodr=C3=ADguez?= Date: Wed, 6 Aug 2025 19:38:03 +0200 Subject: [PATCH] [rubygems/rubygems] Improve source list management testing This approach better simulate that ["http://gems.example.com/"] is the default list of sources, rather than ["https://rubygems.org/"]. https://github.com/rubygems/rubygems/commit/55130c259a --- lib/rubygems/defaults.rb | 2 +- test/rubygems/helper.rb | 3 ++- test/rubygems/test_gem.rb | 3 +++ 3 files changed, 6 insertions(+), 2 deletions(-) diff --git a/lib/rubygems/defaults.rb b/lib/rubygems/defaults.rb index db07681a17..90f09fc191 100644 --- a/lib/rubygems/defaults.rb +++ b/lib/rubygems/defaults.rb @@ -13,7 +13,7 @@ module Gem # An Array of the default sources that come with RubyGems def self.default_sources - %w[https://rubygems.org/] + @default_sources ||= %w[https://rubygems.org/] end ## diff --git a/test/rubygems/helper.rb b/test/rubygems/helper.rb index 51c99a1bc5..b797960ac9 100644 --- a/test/rubygems/helper.rb +++ b/test/rubygems/helper.rb @@ -400,8 +400,9 @@ class Gem::TestCase < Test::Unit::TestCase Gem::RemoteFetcher.fetcher = Gem::FakeFetcher.new @gem_repo = "http://gems.example.com/" + Gem.instance_variable_set :@default_sources, [@gem_repo] + Gem.instance_variable_set :@sources, nil @uri = Gem::URI.parse @gem_repo - Gem.sources.replace [@gem_repo] Gem.searcher = nil Gem::SpecFetcher.fetcher = nil diff --git a/test/rubygems/test_gem.rb b/test/rubygems/test_gem.rb index 49e81fcedb..74c8953904 100644 --- a/test/rubygems/test_gem.rb +++ b/test/rubygems/test_gem.rb @@ -586,6 +586,7 @@ class TestGem < Gem::TestCase end def test_self_default_sources + Gem.remove_instance_variable :@default_sources assert_equal %w[https://rubygems.org/], Gem.default_sources end @@ -1198,6 +1199,8 @@ class TestGem < Gem::TestCase Gem.sources = nil Gem.configuration.sources = %w[http://test.example.com/] assert_equal %w[http://test.example.com/], Gem.sources + ensure + Gem.configuration.sources = nil end def test_try_activate_returns_true_for_activated_specs