Skip to content

Commit

Permalink
Extract setup of environment variables
Browse files Browse the repository at this point in the history
  • Loading branch information
nobu committed Dec 24, 2022
1 parent 640dca9 commit d5635df
Showing 1 changed file with 12 additions and 13 deletions.
25 changes: 12 additions & 13 deletions test/ruby/test_dir.rb
Expand Up @@ -19,11 +19,21 @@ def setup
@dirs << File.join(i, "")
end
end
@envs = nil
end

def teardown
$VERBOSE = @verbose
FileUtils.remove_entry_secure @root if File.directory?(@root)
ENV.update(@envs) if @envs
end

def setup_envs(envs = %w"HOME LOGDIR")
@envs ||= {}
envs.each do |e, v|
@envs[e] = ENV.delete(e)
ENV[e] = v if v
end
end

def test_seek
Expand Down Expand Up @@ -88,10 +98,7 @@ def test_rewind

def test_chdir
pwd = Dir.pwd
env_home = ENV["HOME"]
env_logdir = ENV["LOGDIR"]
ENV.delete("HOME")
ENV.delete("LOGDIR")
setup_envs

assert_raise(Errno::ENOENT) { Dir.chdir(@nodir) }
assert_raise(ArgumentError) { Dir.chdir }
Expand Down Expand Up @@ -125,8 +132,6 @@ def test_chdir
rescue
abort("cannot return the original directory: #{ pwd }")
end
ENV["HOME"] = env_home
ENV["LOGDIR"] = env_logdir
end

def test_chdir_conflict
Expand Down Expand Up @@ -519,10 +524,7 @@ def test_glob_legacy_short_name
end

def test_home
env_home = ENV["HOME"]
env_logdir = ENV["LOGDIR"]
ENV.delete("HOME")
ENV.delete("LOGDIR")
setup_envs

ENV["HOME"] = @nodir
assert_nothing_raised(ArgumentError) do
Expand All @@ -540,9 +542,6 @@ def test_home
%W[no:such:user \u{7559 5b88}:\u{756a}].each do |user|
assert_raise_with_message(ArgumentError, /#{user}/) {Dir.home(user)}
end
ensure
ENV["HOME"] = env_home
ENV["LOGDIR"] = env_logdir
end

def test_symlinks_not_resolved
Expand Down

0 comments on commit d5635df

Please sign in to comment.