From 9d4a4727c9e6c59e7e8354403b77b8e315af53de Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Ate=C5=9F=20G=C3=B6ral?= Date: Tue, 10 Nov 2026 21:19:49 +0100 Subject: [PATCH] test: avoid stubbing ENV in case-insensitive lookup test --- test/mcp/client/stdio_environment_test.rb | 8 +++++--- 1 file changed, 5 insertions(+), 3 deletions(-) diff --git a/test/mcp/client/stdio_environment_test.rb b/test/mcp/client/stdio_environment_test.rb index 359bdbca..7f591b9e 100644 --- a/test/mcp/client/stdio_environment_test.rb +++ b/test/mcp/client/stdio_environment_test.rb @@ -66,11 +66,13 @@ def test_explicit_env_can_select_bundle_gemfile def test_default_environment_preserves_case_insensitive_variable_lookups # Windows retains mixed-case names in ENV.to_h but accepts uppercase ENV lookups. - ENV.stubs(:to_h).returns("Path" => "server-path") - ENV.stubs(:[]).returns(nil) - ENV.stubs(:[]).with("PATH").returns("server-path") + environment = Hash.new { |hash, key| hash.find { |name, _| name.casecmp?(key) }&.last } + environment["Path"] = "server-path" + Stdio.const_set(:ENV, environment) assert_equal("server-path", server_environment["PATH"]) + ensure + Stdio.send(:remove_const, :ENV) end def test_explicit_env_overrides_default_variables