1
0
Fork 0
mirror of https://github.com/ruby/ruby.git synced 2022-11-09 12:17:21 -05:00

Merge rubygems master(ddbf3203f3857649abe95c73edefc7de7e6ecff4).

It fixed: https://github.com/rubygems/rubygems/issues/2041

git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@60219 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
This commit is contained in:
hsbt 2017-10-20 09:03:37 +00:00
parent 0242f7ccae
commit 43e320ba1b
3 changed files with 25 additions and 9 deletions

View file

@ -275,11 +275,15 @@ class Gem::BasicSpecification
# for this spec.
def lib_dirs_glob
dirs = if self.raw_require_paths.size > 1 then
dirs = if self.raw_require_paths
if self.raw_require_paths.size > 1 then
"{#{self.raw_require_paths.join(',')}}"
else
self.raw_require_paths.first
end
else
"lib" # default value for require_paths for bundler/inline
end
"#{self.full_gem_path}/#{dirs}".dup.untaint
end

View file

@ -37,7 +37,7 @@ class TestGemStreamUI < Gem::TestCase
def test_ask
skip 'TTY detection broken on windows' if
Gem.win_platform? unless RUBY_VERSION > '1.9.2'
Gem.win_platform? && RUBY_VERSION <= '1.9.2'
Timeout.timeout(1) do
expected_answer = "Arthur, King of the Britons"
@ -49,7 +49,7 @@ class TestGemStreamUI < Gem::TestCase
def test_ask_no_tty
skip 'TTY detection broken on windows' if
Gem.win_platform? unless RUBY_VERSION > '1.9.2'
Gem.win_platform? && RUBY_VERSION <= '1.9.2'
@in.tty = false
@ -61,7 +61,7 @@ class TestGemStreamUI < Gem::TestCase
def test_ask_for_password
skip 'Always uses $stdin on windows' if
Gem.win_platform? unless RUBY_VERSION > '1.9.2'
Gem.win_platform? && RUBY_VERSION <= '1.9.2'
Timeout.timeout(1) do
expected_answer = "Arthur, King of the Britons"
@ -73,7 +73,7 @@ class TestGemStreamUI < Gem::TestCase
def test_ask_for_password_no_tty
skip 'TTY handling is broken on windows' if
Gem.win_platform? unless RUBY_VERSION > '1.9.2'
Gem.win_platform? && RUBY_VERSION <= '1.9.2'
@in.tty = false
@ -85,7 +85,7 @@ class TestGemStreamUI < Gem::TestCase
def test_ask_yes_no_no_tty_with_default
skip 'TTY handling is broken on windows' if
Gem.win_platform? unless RUBY_VERSION > '1.9.2'
Gem.win_platform? && RUBY_VERSION <= '1.9.2'
@in.tty = false
@ -100,7 +100,7 @@ class TestGemStreamUI < Gem::TestCase
def test_ask_yes_no_no_tty_without_default
skip 'TTY handling is broken on windows' if
Gem.win_platform? unless RUBY_VERSION > '1.9.2'
Gem.win_platform? && RUBY_VERSION <= '1.9.2'
@in.tty = false

View file

@ -110,6 +110,18 @@ class TestStubSpecification < Gem::TestCase
assert_equal code_rb, stub.matches_for_glob('code*').first
end
def test_matches_for_glob_with_bundler_inline
stub = stub_with_extension
code_rb = File.join stub.gem_dir, 'lib', 'code.rb'
FileUtils.mkdir_p File.dirname code_rb
FileUtils.touch code_rb
stub.stub(:raw_require_paths, nil) do
assert_equal code_rb, stub.matches_for_glob('code*').first
end
end
def test_missing_extensions_eh
stub = stub_with_extension do |s|
extconf_rb = File.join s.gem_dir, s.extensions.first