File: test_gem_source_installed.rb

package info (click to toggle)
ruby3.4 3.4.5-1~exp1
  • links: PTS, VCS
  • area: main
  • in suites: experimental
  • size: 154,784 kB
  • sloc: ruby: 1,259,653; ansic: 829,955; yacc: 28,233; pascal: 7,359; sh: 3,864; python: 1,799; cpp: 1,158; asm: 808; makefile: 801; javascript: 414; lisp: 109; perl: 62; awk: 36; sed: 4; xml: 4
file content (40 lines) | stat: -rw-r--r-- 1,475 bytes parent folder | download | duplicates (3)
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
# frozen_string_literal: true

require_relative "helper"
require "rubygems/source"

class TestGemSourceInstalled < Gem::TestCase
  def test_spaceship
    a1 = quick_gem "a", "1"
    util_build_gem a1

    remote    = Gem::Source.new @gem_repo
    specific  = Gem::Source::SpecificFile.new a1.cache_file
    installed = Gem::Source::Installed.new
    local     = Gem::Source::Local.new
    git       = Gem::Source::Git.new "a", "a", nil
    vendor    = Gem::Source::Vendor.new "a"

    assert_equal(0, installed.<=>(installed), "installed <=> installed") # rubocop:disable Lint/BinaryOperatorWithIdenticalOperands

    assert_equal(-1, remote.<=>(installed), "remote <=> installed")
    assert_equal(1, installed.<=>(remote),    "installed <=> remote")

    assert_equal(1, installed.<=>(local),     "installed <=> local")
    assert_equal(-1, local.<=>(installed), "local <=> installed")

    assert_equal(-1, specific.<=>(installed), "specific <=> installed")
    assert_equal(1, installed.<=>(specific),  "installed <=> specific")

    assert_equal(1, git. <=>(installed), "git <=> installed")
    assert_equal(-1, installed.<=>(git), "installed <=> git")

    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]>", local.pretty_inspect.gsub(/\s+/, " ").strip
  end
end