diff options
-rw-r--r-- | lib/rubygems/source.rb | 16 | ||||
-rw-r--r-- | lib/rubygems/source/git.rb | 12 | ||||
-rw-r--r-- | lib/rubygems/source/installed.rb | 4 | ||||
-rw-r--r-- | lib/rubygems/source/local.rb | 12 | ||||
-rw-r--r-- | lib/rubygems/source/specific_file.rb | 8 | ||||
-rw-r--r-- | test/rubygems/test_gem_source_git.rb | 6 | ||||
-rw-r--r-- | test/rubygems/test_gem_source_installed.rb | 5 | ||||
-rw-r--r-- | test/rubygems/test_gem_source_local.rb | 5 | ||||
-rw-r--r-- | test/rubygems/test_gem_source_specific_file.rb | 4 |
9 files changed, 52 insertions, 20 deletions
diff --git a/lib/rubygems/source.rb b/lib/rubygems/source.rb index d90e311b65..4e5545982d 100644 --- a/lib/rubygems/source.rb +++ b/lib/rubygems/source.rb @@ -213,14 +213,16 @@ class Gem::Source end def pretty_print(q) # :nodoc: - q.group 2, "[Remote:", "]" do - q.breakable - q.text @uri.to_s - - if api = uri + q.object_group(self) do + q.group 2, "[Remote:", "]" do q.breakable - q.text "API URI: " - q.text api.to_s + q.text @uri.to_s + + if api = uri + q.breakable + q.text "API URI: " + q.text api.to_s + end end end end diff --git a/lib/rubygems/source/git.rb b/lib/rubygems/source/git.rb index bda63c6844..34f6851bc4 100644 --- a/lib/rubygems/source/git.rb +++ b/lib/rubygems/source/git.rb @@ -157,12 +157,14 @@ class Gem::Source::Git < Gem::Source end def pretty_print(q) # :nodoc: - q.group 2, "[Git: ", "]" do - q.breakable - q.text @repository + q.object_group(self) do + q.group 2, "[Git: ", "]" do + q.breakable + q.text @repository - q.breakable - q.text @reference + q.breakable + q.text @reference + end end end diff --git a/lib/rubygems/source/installed.rb b/lib/rubygems/source/installed.rb index cbe12a0516..f5c96fee51 100644 --- a/lib/rubygems/source/installed.rb +++ b/lib/rubygems/source/installed.rb @@ -32,6 +32,8 @@ class Gem::Source::Installed < Gem::Source end def pretty_print(q) # :nodoc: - q.text "[Installed]" + q.object_group(self) do + q.text "[Installed]" + end end end diff --git a/lib/rubygems/source/local.rb b/lib/rubygems/source/local.rb index d81d8343a8..ba6eea1f9a 100644 --- a/lib/rubygems/source/local.rb +++ b/lib/rubygems/source/local.rb @@ -117,10 +117,14 @@ class Gem::Source::Local < Gem::Source end def pretty_print(q) # :nodoc: - q.group 2, "[Local gems:", "]" do - q.breakable - q.seplist @specs.keys do |v| - q.text v.full_name + q.object_group(self) do + q.group 2, "[Local gems:", "]" do + q.breakable + if @specs + q.seplist @specs.keys do |v| + q.text v.full_name + end + end end end end diff --git a/lib/rubygems/source/specific_file.rb b/lib/rubygems/source/specific_file.rb index e9b2753646..dde1d48a21 100644 --- a/lib/rubygems/source/specific_file.rb +++ b/lib/rubygems/source/specific_file.rb @@ -42,9 +42,11 @@ class Gem::Source::SpecificFile < Gem::Source end def pretty_print(q) # :nodoc: - q.group 2, "[SpecificFile:", "]" do - q.breakable - q.text @path + q.object_group(self) do + q.group 2, "[SpecificFile:", "]" do + q.breakable + q.text @path + end end end diff --git a/test/rubygems/test_gem_source_git.rb b/test/rubygems/test_gem_source_git.rb index 20e750a0d4..abcd55907e 100644 --- a/test/rubygems/test_gem_source_git.rb +++ b/test/rubygems/test_gem_source_git.rb @@ -292,6 +292,12 @@ class TestGemSourceGit < Gem::TestCase assert_equal Gem::URI(@repository), @source.uri end + def test_pretty_print + assert_equal "#<Gem::Source::Git[Git: \n" \ + " #{@repository}\n" \ + " HEAD]>\n", @source.pretty_inspect + end + def test_uri_hash assert_equal @hash, @source.uri_hash diff --git a/test/rubygems/test_gem_source_installed.rb b/test/rubygems/test_gem_source_installed.rb index 0d6171b0e5..0ef14d7470 100644 --- a/test/rubygems/test_gem_source_installed.rb +++ b/test/rubygems/test_gem_source_installed.rb @@ -32,4 +32,9 @@ class TestGemSourceInstalled < Gem::TestCase assert_equal(1, vendor.<=>(installed), "vendor <=> installed") assert_equal(-1, installed.<=>(vendor), "installed <=> vendor") end + + def test_pretty_print + local = Gem::Source::Installed.new + assert_equal "#<Gem::Source::Installed[Installed]>\n", local.pretty_inspect + end end diff --git a/test/rubygems/test_gem_source_local.rb b/test/rubygems/test_gem_source_local.rb index c15e0e07c0..ed6aa24f94 100644 --- a/test/rubygems/test_gem_source_local.rb +++ b/test/rubygems/test_gem_source_local.rb @@ -104,4 +104,9 @@ class TestGemSourceLocal < Gem::TestCase assert_equal(-1, specific.<=>(local), "specific <=> local") assert_equal(1, local.<=>(specific), "local <=> specific") end + + def test_pretty_print + local = Gem::Source::Local.new + assert_equal "#<Gem::Source::Local[Local gems: ]>\n", local.pretty_inspect + end end diff --git a/test/rubygems/test_gem_source_specific_file.rb b/test/rubygems/test_gem_source_specific_file.rb index 3bc1901ee1..bcc4168444 100644 --- a/test/rubygems/test_gem_source_specific_file.rb +++ b/test/rubygems/test_gem_source_specific_file.rb @@ -73,4 +73,8 @@ class TestGemSourceSpecificFile < Gem::TestCase assert_equal(0, a1_source.<=>(a1_source), "a1_source <=> a1_source") # rubocop:disable Lint/BinaryOperatorWithIdenticalOperands assert_equal(1, a2_source.<=>(a1_source), "a2_source <=> a1_source") end + + def test_pretty_print + assert_equal "#<Gem::Source::SpecificFile[SpecificFile:\n #{@sf.path}]>\n", @sf.pretty_inspect + end end |