2016-02-01 07:43:26 -05:00
|
|
|
# frozen_string_literal: true
|
2013-08-26 16:24:51 -04:00
|
|
|
require 'rubygems/test_case'
|
|
|
|
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
|
2014-09-13 23:30:02 -04:00
|
|
|
git = Gem::Source::Git.new 'a', 'a', 'master'
|
|
|
|
vendor = Gem::Source::Vendor.new 'a'
|
2013-08-26 16:24:51 -04:00
|
|
|
|
2019-02-14 07:59:03 -05:00
|
|
|
assert_equal(0, installed.<=>(installed), 'installed <=> installed')
|
2013-08-26 16:24:51 -04:00
|
|
|
|
2020-03-27 08:49:55 -04:00
|
|
|
assert_equal(-1, remote.<=>(installed), 'remote <=> installed')
|
2019-02-14 07:59:03 -05:00
|
|
|
assert_equal(1, installed.<=>(remote), 'installed <=> remote')
|
2013-08-26 16:24:51 -04:00
|
|
|
|
2019-02-14 07:59:03 -05:00
|
|
|
assert_equal(1, installed.<=>(local), 'installed <=> local')
|
2020-03-27 08:49:55 -04:00
|
|
|
assert_equal(-1, local.<=>(installed), 'local <=> installed')
|
2013-08-26 16:24:51 -04:00
|
|
|
|
2020-03-27 08:49:55 -04:00
|
|
|
assert_equal(-1, specific.<=>(installed), 'specific <=> installed')
|
2019-02-14 07:59:03 -05:00
|
|
|
assert_equal(1, installed.<=>(specific), 'installed <=> specific')
|
2014-09-13 23:30:02 -04:00
|
|
|
|
2020-03-27 08:49:55 -04:00
|
|
|
assert_equal(1, git. <=>(installed), 'git <=> installed')
|
2019-05-03 13:56:58 -04:00
|
|
|
assert_equal(-1, installed.<=>(git), 'installed <=> git')
|
2014-09-13 23:30:02 -04:00
|
|
|
|
2020-03-27 08:49:55 -04:00
|
|
|
assert_equal(1, vendor.<=>(installed), 'vendor <=> installed')
|
2019-05-03 13:56:58 -04:00
|
|
|
assert_equal(-1, installed.<=>(vendor), 'installed <=> vendor')
|
2013-08-26 16:24:51 -04:00
|
|
|
end
|
|
|
|
|
|
|
|
end
|