Add tests for Cask::Config.
This commit is contained in:
parent
190ff7558a
commit
707cb33346
51
Library/Homebrew/test/cask/config_spec.rb
Normal file
51
Library/Homebrew/test/cask/config_spec.rb
Normal file
@ -0,0 +1,51 @@
|
||||
describe Cask::Config, :cask do
|
||||
subject(:config) { described_class.new }
|
||||
|
||||
describe "#default" do
|
||||
it "returns the default directories" do
|
||||
expect(config.default[:appdir]).to eq(Pathname(TEST_TMPDIR).join("cask-appdir"))
|
||||
end
|
||||
end
|
||||
|
||||
describe "#appdir" do
|
||||
it "returns the default value if no HOMEBREW_CASK_OPTS is unset" do
|
||||
expect(config.appdir).to eq(Pathname(TEST_TMPDIR).join("cask-appdir"))
|
||||
end
|
||||
|
||||
specify "environment overwrites default" do
|
||||
ENV["HOMEBREW_CASK_OPTS"] = "--appdir=/path/to/apps"
|
||||
|
||||
expect(config.appdir).to eq(Pathname("/path/to/apps"))
|
||||
end
|
||||
|
||||
specify "specific overwrites default" do
|
||||
config = described_class.new(explicit: { appdir: "/explicit/path/to/apps" })
|
||||
|
||||
expect(config.appdir).to eq(Pathname("/explicit/path/to/apps"))
|
||||
end
|
||||
|
||||
specify "explicit overwrites environment" do
|
||||
ENV["HOMEBREW_CASK_OPTS"] = "--appdir=/path/to/apps"
|
||||
|
||||
config = described_class.new(explicit: { appdir: "/explicit/path/to/apps" })
|
||||
|
||||
expect(config.appdir).to eq(Pathname("/explicit/path/to/apps"))
|
||||
end
|
||||
end
|
||||
|
||||
describe "#env" do
|
||||
it "returns directories specified with the HOMEBREW_CASK_OPTS variable" do
|
||||
ENV["HOMEBREW_CASK_OPTS"] = "--appdir=/path/to/apps"
|
||||
|
||||
expect(config.env).to eq(appdir: Pathname("/path/to/apps"))
|
||||
end
|
||||
end
|
||||
|
||||
describe "#explicit" do
|
||||
let(:config) { described_class.new(explicit: { appdir: "/explicit/path/to/apps" }) }
|
||||
|
||||
it "returns directories explicitly given as arguments" do
|
||||
expect(config.explicit[:appdir]).to eq(Pathname("/explicit/path/to/apps"))
|
||||
end
|
||||
end
|
||||
end
|
||||
Loading…
x
Reference in New Issue
Block a user