From 9a618b95cdee82b64257a248c31d49ae9f066fea Mon Sep 17 00:00:00 2001 From: Lars Kanis Date: Fri, 27 Oct 2023 03:16:18 +0200 Subject: [Feature #19244] Windows: Prefer USERPROFILE over HOMEPATH on startup as well --- test/ruby/test_dir.rb | 34 ++++++++++++++++++++++++++++++++++ 1 file changed, 34 insertions(+) (limited to 'test/ruby') diff --git a/test/ruby/test_dir.rb b/test/ruby/test_dir.rb index 65803d0bc5..34c2e69dc1 100644 --- a/test/ruby/test_dir.rb +++ b/test/ruby/test_dir.rb @@ -578,6 +578,40 @@ class TestDir < Test::Unit::TestCase ENV.delete('USERPROFILE') assert_equal("C:/ruby/homepath", Dir.home) end + + def test_home_at_startup_windows + env = {'HOME' => "C:\\ruby\\home"} + args = [env] + assert_separately(args, "#{<<~"begin;"}\n#{<<~'end;'}") + begin; + assert_equal("C:/ruby/home", Dir.home) + end; + + env['USERPROFILE'] = "C:\\ruby\\userprofile" + assert_separately(args, "#{<<~"begin;"}\n#{<<~'end;'}") + begin; + assert_equal("C:/ruby/home", Dir.home) + end; + + env['HOME'] = nil + assert_separately(args, "#{<<~"begin;"}\n#{<<~'end;'}") + begin; + assert_equal("C:/ruby/userprofile", Dir.home) + end; + + env['HOMEDRIVE'] = "C:" + env['HOMEPATH'] = "\\ruby\\homepath" + assert_separately(args, "#{<<~"begin;"}\n#{<<~'end;'}") + begin; + assert_equal("C:/ruby/userprofile", Dir.home) + end; + + env['USERPROFILE'] = nil + assert_separately(args, "#{<<~"begin;"}\n#{<<~'end;'}") + begin; + assert_equal("C:/ruby/homepath", Dir.home) + end; + end end def test_home -- cgit v1.2.3