summaryrefslogtreecommitdiff
path: root/test/rubygems/test_gem.rb
diff options
context:
space:
mode:
authorJosef Šimánek <josef.simanek@gmail.com>2023-02-28 05:38:47 +0100
committerHiroshi SHIBATA <hsbt@ruby-lang.org>2023-03-07 16:52:28 +0900
commitdc33d32f12689dc5f29ba7bf7bb0c870647ca776 (patch)
treecd8ccd193a3cb4b4e994e23ca5cf2fe2ba28b673 /test/rubygems/test_gem.rb
parent93f0749a64ae4511bd38358dee238140489526b5 (diff)
Use proper memoized var name for Gem.state_home.
Diffstat (limited to 'test/rubygems/test_gem.rb')
-rw-r--r--test/rubygems/test_gem.rb24
1 files changed, 24 insertions, 0 deletions
diff --git a/test/rubygems/test_gem.rb b/test/rubygems/test_gem.rb
index b572208e6b..99335ddb5b 100644
--- a/test/rubygems/test_gem.rb
+++ b/test/rubygems/test_gem.rb
@@ -1654,6 +1654,30 @@ class TestGem < Gem::TestCase
ENV["SOURCE_DATE_EPOCH"] = old_epoch
end
+ def test_data_home_default
+ expected = File.join(@userhome, ".local", "share")
+ assert_equal expected, Gem.data_home
+ end
+
+ def test_data_home_from_env
+ ENV["XDG_DATA_HOME"] = expected = "/test/data/home"
+ assert_equal expected, Gem.data_home
+ end
+
+ def test_state_home_default
+ Gem.instance_variable_set :@state_home, nil
+ Gem.data_home # memoize @data_home, to demonstrate GH-6418
+ expected = File.join(@userhome, ".local", "state")
+ assert_equal expected, Gem.state_home
+ end
+
+ def test_state_home_from_env
+ Gem.instance_variable_set :@state_home, nil
+ Gem.data_home # memoize @data_home, to demonstrate GH-6418
+ ENV["XDG_STATE_HOME"] = expected = "/test/state/home"
+ assert_equal expected, Gem.state_home
+ end
+
private
def ruby_install_name(name)