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 | |
| 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!
| -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 | 
