diff options
| author | Alyssa Ross | 2018-03-02 08:31:19 +0000 |
|---|---|---|
| committer | GitHub | 2018-03-02 08:31:19 +0000 |
| commit | db7f0734c9c0e6db94a33a7c940fdef87c81319b (patch) | |
| tree | cee636ad2383bcd8ee8a7c4765a8f6394dd8bd90 /Library | |
| parent | 43c658a8fa966c9cb66386961a77c041ebca89dd (diff) | |
| parent | 84dda31e82607424b435a60504ffc288f16c6ade (diff) | |
| download | brew-db7f0734c9c0e6db94a33a7c940fdef87c81319b.tar.bz2 | |
Merge pull request #3854 from alyssais/test_clear_sensitive_environment
Add tests for ENV#clear_sensitive_environment!
Diffstat (limited to 'Library')
| -rw-r--r-- | Library/Homebrew/extend/ENV.rb | 4 | ||||
| -rw-r--r-- | Library/Homebrew/test/ENV_spec.rb | 14 |
2 files changed, 16 insertions, 2 deletions
diff --git a/Library/Homebrew/extend/ENV.rb b/Library/Homebrew/extend/ENV.rb index 374be49b9..002220764 100644 --- a/Library/Homebrew/extend/ENV.rb +++ b/Library/Homebrew/extend/ENV.rb @@ -28,9 +28,9 @@ module EnvActivation end def clear_sensitive_environment! - ENV.each_key do |key| + each_key do |key| next unless /(cookie|key|token|password)/i =~ key - ENV.delete key + delete key end end end diff --git a/Library/Homebrew/test/ENV_spec.rb b/Library/Homebrew/test/ENV_spec.rb index 07f6cdb6b..8b39e52d7 100644 --- a/Library/Homebrew/test/ENV_spec.rb +++ b/Library/Homebrew/test/ENV_spec.rb @@ -141,6 +141,20 @@ shared_examples EnvActivation do expect(subject["MAKEFLAGS"]).to eq("-j4") end + + describe "#clear_sensitive_environment!" do + it "removes sensitive environment variables" do + subject["SECRET_TOKEN"] = "password" + subject.clear_sensitive_environment! + expect(subject).not_to include("SECRET_TOKEN") + end + + it "leaves non-sensitive environment variables alone" do + subject["FOO"] = "bar" + subject.clear_sensitive_environment! + expect(subject["FOO"]).to eq "bar" + end + end end describe Stdenv do |
