File: test_gem_commands_list_command.rb

package info (click to toggle)
ruby3.3 3.3.8-2
  • links: PTS, VCS
  • area: main
  • in suites: forky, sid, trixie
  • size: 153,620 kB
  • sloc: ruby: 1,244,308; ansic: 836,474; yacc: 28,074; pascal: 6,748; sh: 3,913; python: 1,719; cpp: 1,158; makefile: 742; asm: 712; javascript: 394; lisp: 97; perl: 62; awk: 36; sed: 23; xml: 4
file content (58 lines) | stat: -rw-r--r-- 1,090 bytes parent folder | download | duplicates (4)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
# frozen_string_literal: true

require_relative "helper"
require "rubygems/commands/list_command"

class TestGemCommandsListCommand < Gem::TestCase
  def setup
    super

    @cmd = Gem::Commands::ListCommand.new
  end

  def test_execute_installed
    spec_fetcher do |fetcher|
      fetcher.spec "c", 1
    end

    @fetcher.data["#{@gem_repo}Marshal.#{Gem.marshal_version}"] = proc do
      raise Gem::RemoteFetcher::FetchError
    end

    @cmd.handle_options %w[c --installed]

    assert_raise Gem::MockGemUi::SystemExitException do
      use_ui @ui do
        @cmd.execute
      end
    end

    assert_equal "true\n", @ui.output
    assert_equal "", @ui.error
  end

  def test_execute_normal_gem_shadowing_default_gem
    c1_default = new_default_spec "c", 1
    install_default_gems c1_default

    c1 = util_spec("c", 1) {|s| s.date = "2024-01-01" }
    install_gem c1

    Gem::Specification.reset

    @cmd.handle_options %w[c]

    use_ui @ui do
      @cmd.execute
    end

    expected = <<-EOF

*** LOCAL GEMS ***

c (1)
EOF

    assert_equal expected, @ui.output
  end
end