summaryrefslogtreecommitdiff
path: root/test/rubygems
diff options
context:
space:
mode:
authormame <mame@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-01-10 10:39:09 +0000
committermame <mame@b2dd03c8-39d4-4d8f-98ff-823fe69b080e>2018-01-10 10:39:09 +0000
commitb496220a1f70f8393070ffebcb883c7c5fc036d7 (patch)
treee7df67accf737556f78bf7dcae236d10cc287dea /test/rubygems
parent0542d61e2717a3b8e1e4a2972bd32385a036cab8 (diff)
skip some tests so that no failure occurs in root privilege
Some tests had failed on `sudo make test-all`, mainly because root can access any files regardless of permission. This change adds `skip` guards into such tests. Note that almost all tests in which `skip` guards is added, already have "windows" guard. This is because there is no support to avoid read access by owner on Windows. git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@61758 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
Diffstat (limited to 'test/rubygems')
-rw-r--r--test/rubygems/test_gem.rb2
-rw-r--r--test/rubygems/test_gem_commands_cleanup_command.rb2
-rw-r--r--test/rubygems/test_gem_commands_install_command.rb1
-rw-r--r--test/rubygems/test_gem_install_update_options.rb2
-rw-r--r--test/rubygems/test_gem_installer.rb4
-rw-r--r--test/rubygems/test_gem_rdoc.rb2
-rw-r--r--test/rubygems/test_gem_remote_fetcher.rb2
-rw-r--r--test/rubygems/test_gem_specification.rb3
8 files changed, 14 insertions, 4 deletions
diff --git a/test/rubygems/test_gem.rb b/test/rubygems/test_gem.rb
index 315aea020f..bd4c91d96d 100644
--- a/test/rubygems/test_gem.rb
+++ b/test/rubygems/test_gem.rb
@@ -463,7 +463,7 @@ class TestGem < Gem::TestCase
assert File.directory?(util_cache_dir)
end
- unless win_platform? then # only for FS that support write protection
+ unless win_platform? || Process.uid == 0 then # only for FS that support write protection
def test_self_ensure_gem_directories_write_protected
gemdir = File.join @tempdir, "egd"
FileUtils.rm_r gemdir rescue nil
diff --git a/test/rubygems/test_gem_commands_cleanup_command.rb b/test/rubygems/test_gem_commands_cleanup_command.rb
index c55e195975..a222659ead 100644
--- a/test/rubygems/test_gem_commands_cleanup_command.rb
+++ b/test/rubygems/test_gem_commands_cleanup_command.rb
@@ -158,7 +158,7 @@ class TestGemCommandsCleanupCommand < Gem::TestCase
assert_path_exists @a_1_1.gem_dir
ensure
FileUtils.chmod 0755, @gemhome
- end unless win_platform?
+ end unless win_platform? || Process.uid == 0
def test_execute_dry_run
@cmd.options[:args] = %w[a]
diff --git a/test/rubygems/test_gem_commands_install_command.rb b/test/rubygems/test_gem_commands_install_command.rb
index dd86a85038..fefc5c7059 100644
--- a/test/rubygems/test_gem_commands_install_command.rb
+++ b/test/rubygems/test_gem_commands_install_command.rb
@@ -131,6 +131,7 @@ class TestGemCommandsInstallCommand < Gem::TestCase
def test_execute_no_user_install
skip 'skipped on MS Windows (chmod has no effect)' if win_platform?
+ skip 'skipped in root privilege' if Process.uid == 0
specs = spec_fetcher do |fetcher|
fetcher.gem 'a', 2
diff --git a/test/rubygems/test_gem_install_update_options.rb b/test/rubygems/test_gem_install_update_options.rb
index e2d546307d..69a2b61041 100644
--- a/test/rubygems/test_gem_install_update_options.rb
+++ b/test/rubygems/test_gem_install_update_options.rb
@@ -141,6 +141,8 @@ class TestGemInstallUpdateOptions < Gem::InstallerTestCase
def test_user_install_disabled_read_only
if win_platform?
skip('test_user_install_disabled_read_only test skipped on MS Windows')
+ elsif Process.uid == 0
+ skip('test_user_install_disabled_read_only test skipped in root privilege')
else
@cmd.handle_options %w[--no-user-install]
diff --git a/test/rubygems/test_gem_installer.rb b/test/rubygems/test_gem_installer.rb
index 39095c7dee..63acc3d130 100644
--- a/test/rubygems/test_gem_installer.rb
+++ b/test/rubygems/test_gem_installer.rb
@@ -437,6 +437,8 @@ gem 'other', version
if win_platform?
skip('test_generate_bin_script_no_perms skipped on MS Windows')
+ elsif Process.uid == 0
+ skip('test_generate_bin_script_no_perms skipped in root privilege')
else
FileUtils.chmod 0000, util_inst_bindir
@@ -529,6 +531,8 @@ gem 'other', version
if win_platform?
skip('test_generate_bin_symlink_no_perms skipped on MS Windows')
+ elsif Process.uid == 0
+ skip('test_user_install_disabled_read_only test skipped in root privilege')
else
FileUtils.chmod 0000, util_inst_bindir
diff --git a/test/rubygems/test_gem_rdoc.rb b/test/rubygems/test_gem_rdoc.rb
index 76ca8c45a9..3961a8e3f9 100644
--- a/test/rubygems/test_gem_rdoc.rb
+++ b/test/rubygems/test_gem_rdoc.rb
@@ -223,6 +223,7 @@ class TestGemRDoc < Gem::TestCase
def test_remove_unwritable
skip 'chmod not supported' if Gem.win_platform?
+ skip 'skipped in root privilege' if Process.uid == 0
FileUtils.mkdir_p @a.base_dir
FileUtils.chmod 0, @a.base_dir
@@ -251,6 +252,7 @@ class TestGemRDoc < Gem::TestCase
def test_setup_unwritable
skip 'chmod not supported' if Gem.win_platform?
+ skip 'skipped in root privilege' if Process.uid == 0
FileUtils.mkdir_p @a.doc_dir
FileUtils.chmod 0, @a.doc_dir
diff --git a/test/rubygems/test_gem_remote_fetcher.rb b/test/rubygems/test_gem_remote_fetcher.rb
index ee5ac77717..fc51b06f1b 100644
--- a/test/rubygems/test_gem_remote_fetcher.rb
+++ b/test/rubygems/test_gem_remote_fetcher.rb
@@ -431,7 +431,7 @@ PeIQQkFng2VVot/WAQbv3ePqWq07g1BBcwIBAg==
assert File.exist?(a1_cache_gem)
end
- unless win_platform? # File.chmod doesn't work
+ unless win_platform? || Process.uid == 0 # File.chmod doesn't work
def test_download_local_read_only
FileUtils.mv @a1_gem, @tempdir
local_path = File.join @tempdir, @a1.file_name
diff --git a/test/rubygems/test_gem_specification.rb b/test/rubygems/test_gem_specification.rb
index ab3a7399af..7bfeb48d3c 100644
--- a/test/rubygems/test_gem_specification.rb
+++ b/test/rubygems/test_gem_specification.rb
@@ -1464,6 +1464,7 @@ dependencies: []
def test_build_extensions_extensions_dir_unwritable
skip 'chmod not supported' if Gem.win_platform?
+ skip 'skipped in root privilege' if Process.uid == 0
ext_spec
@@ -1489,7 +1490,7 @@ dependencies: []
@ext.build_extensions
refute_path_exists @ext.extension_dir
ensure
- unless ($DEBUG or win_platform?) then
+ unless ($DEBUG or win_platform? or Process.uid == 0) then
FileUtils.chmod 0755, File.join(@ext.base_dir, 'extensions')
FileUtils.chmod 0755, @ext.base_dir
end