aboutsummaryrefslogtreecommitdiffstats
path: root/Library
diff options
context:
space:
mode:
authorMarkus Reiter2017-02-08 13:25:10 +0100
committerMarkus Reiter2017-02-10 17:19:19 +0100
commit7b2d8ed4b3a1a71da59b1aa1859e844c37ba24c2 (patch)
tree3163a050980a2906cb9d20bcb219be797236ea5e /Library
parentbcaa13b7507afaf7f957a2d815884a8263461d31 (diff)
downloadbrew-7b2d8ed4b3a1a71da59b1aa1859e844c37ba24c2.tar.bz2
Convert Options test to spec.
Diffstat (limited to 'Library')
-rw-r--r--Library/Homebrew/cask/spec/cask/cli/options_spec.rb (renamed from Library/Homebrew/cask/test/cask/cli/options_test.rb)50
-rw-r--r--Library/Homebrew/cask/spec/spec_helper.rb32
2 files changed, 50 insertions, 32 deletions
diff --git a/Library/Homebrew/cask/test/cask/cli/options_test.rb b/Library/Homebrew/cask/spec/cask/cli/options_spec.rb
index d49e7827b..a4381213a 100644
--- a/Library/Homebrew/cask/test/cask/cli/options_test.rb
+++ b/Library/Homebrew/cask/spec/cask/cli/options_spec.rb
@@ -1,10 +1,10 @@
-require "test_helper"
+require "spec_helper"
describe Hbc::CLI do
it "supports setting the appdir" do
Hbc::CLI.process_options %w[help --appdir=/some/path/foo]
- Hbc.appdir.must_equal Pathname("/some/path/foo")
+ expect(Hbc.appdir).to eq(Pathname.new("/some/path/foo"))
end
it "supports setting the appdir from ENV" do
@@ -12,13 +12,13 @@ describe Hbc::CLI do
Hbc::CLI.process_options %w[help]
- Hbc.appdir.must_equal Pathname("/some/path/bar")
+ expect(Hbc.appdir).to eq(Pathname.new("/some/path/bar"))
end
it "supports setting the prefpanedir" do
Hbc::CLI.process_options %w[help --prefpanedir=/some/path/foo]
- Hbc.prefpanedir.must_equal Pathname("/some/path/foo")
+ expect(Hbc.prefpanedir).to eq(Pathname.new("/some/path/foo"))
end
it "supports setting the prefpanedir from ENV" do
@@ -26,13 +26,13 @@ describe Hbc::CLI do
Hbc::CLI.process_options %w[help]
- Hbc.prefpanedir.must_equal Pathname("/some/path/bar")
+ expect(Hbc.prefpanedir).to eq(Pathname.new("/some/path/bar"))
end
it "supports setting the qlplugindir" do
Hbc::CLI.process_options %w[help --qlplugindir=/some/path/foo]
- Hbc.qlplugindir.must_equal Pathname("/some/path/foo")
+ expect(Hbc.qlplugindir).to eq(Pathname.new("/some/path/foo"))
end
it "supports setting the qlplugindir from ENV" do
@@ -40,13 +40,13 @@ describe Hbc::CLI do
Hbc::CLI.process_options %w[help]
- Hbc.qlplugindir.must_equal Pathname("/some/path/bar")
+ expect(Hbc.qlplugindir).to eq(Pathname.new("/some/path/bar"))
end
it "supports setting the colorpickerdir" do
Hbc::CLI.process_options %w[help --colorpickerdir=/some/path/foo]
- Hbc.colorpickerdir.must_equal Pathname("/some/path/foo")
+ expect(Hbc.colorpickerdir).to eq(Pathname.new("/some/path/foo"))
end
it "supports setting the colorpickerdir from ENV" do
@@ -54,13 +54,13 @@ describe Hbc::CLI do
Hbc::CLI.process_options %w[help]
- Hbc.colorpickerdir.must_equal Pathname("/some/path/bar")
+ expect(Hbc.colorpickerdir).to eq(Pathname.new("/some/path/bar"))
end
it "supports setting the dictionarydir" do
Hbc::CLI.process_options %w[help --dictionarydir=/some/path/foo]
- Hbc.dictionarydir.must_equal Pathname("/some/path/foo")
+ expect(Hbc.dictionarydir).to eq(Pathname.new("/some/path/foo"))
end
it "supports setting the dictionarydir from ENV" do
@@ -68,13 +68,13 @@ describe Hbc::CLI do
Hbc::CLI.process_options %w[help]
- Hbc.dictionarydir.must_equal Pathname("/some/path/bar")
+ expect(Hbc.dictionarydir).to eq(Pathname.new("/some/path/bar"))
end
it "supports setting the fontdir" do
Hbc::CLI.process_options %w[help --fontdir=/some/path/foo]
- Hbc.fontdir.must_equal Pathname("/some/path/foo")
+ expect(Hbc.fontdir).to eq(Pathname.new("/some/path/foo"))
end
it "supports setting the fontdir from ENV" do
@@ -82,13 +82,13 @@ describe Hbc::CLI do
Hbc::CLI.process_options %w[help]
- Hbc.fontdir.must_equal Pathname("/some/path/bar")
+ expect(Hbc.fontdir).to eq(Pathname.new("/some/path/bar"))
end
it "supports setting the servicedir" do
Hbc::CLI.process_options %w[help --servicedir=/some/path/foo]
- Hbc.servicedir.must_equal Pathname("/some/path/foo")
+ expect(Hbc.servicedir).to eq(Pathname.new("/some/path/foo"))
end
it "supports setting the servicedir from ENV" do
@@ -96,36 +96,36 @@ describe Hbc::CLI do
Hbc::CLI.process_options %w[help]
- Hbc.servicedir.must_equal Pathname("/some/path/bar")
+ expect(Hbc.servicedir).to eq(Pathname.new("/some/path/bar"))
end
it "allows additional options to be passed through" do
rest = Hbc::CLI.process_options %w[edit foo --create --appdir=/some/path/qux]
- Hbc.appdir.must_equal Pathname("/some/path/qux")
- rest.must_equal %w[edit foo --create]
+ expect(Hbc.appdir).to eq(Pathname.new("/some/path/qux"))
+ expect(rest).to eq(%w[edit foo --create])
end
describe "when a mandatory argument is missing" do
it "shows a user-friendly error message" do
- lambda {
+ expect {
Hbc::CLI.process_options %w[install -f]
- }.must_raise Hbc::CaskError
+ }.to raise_error(Hbc::CaskError)
end
end
describe "given an ambiguous option" do
it "shows a user-friendly error message" do
- lambda {
+ expect {
Hbc::CLI.process_options %w[edit -c]
- }.must_raise Hbc::CaskError
+ }.to raise_error(Hbc::CaskError)
end
end
describe "--debug" do
it "sets the Cask debug method to true" do
Hbc::CLI.process_options %w[help --debug]
- Hbc.debug.must_equal true
+ expect(Hbc.debug).to be true
Hbc.debug = false
end
end
@@ -133,12 +133,8 @@ describe Hbc::CLI do
describe "--help" do
it "sets the Cask help method to true" do
Hbc::CLI.process_options %w[foo --help]
- Hbc.help.must_equal true
+ expect(Hbc.help).to be true
Hbc.help = false
end
end
-
- after do
- ENV["HOMEBREW_CASK_OPTS"] = nil
- end
end
diff --git a/Library/Homebrew/cask/spec/spec_helper.rb b/Library/Homebrew/cask/spec/spec_helper.rb
index 059d13a3a..13ed746b5 100644
--- a/Library/Homebrew/cask/spec/spec_helper.rb
+++ b/Library/Homebrew/cask/spec/spec_helper.rb
@@ -37,11 +37,33 @@ FileUtils.ln_s Pathname.new(ENV["HOMEBREW_LIBRARY"]).join("Taps", "caskroom", "h
RSpec.configure do |config|
config.order = :random
config.include(Test::Helper::Shutup)
- config.after(:each) do
- FileUtils.rm_rf [
- Hbc.appdir.children,
- Hbc.caskroom.children,
- ]
+ config.around(:each) do |example|
+ begin
+ @__appdir = Hbc.appdir
+ @__caskroom = Hbc.caskroom
+ @__prefpanedir = Hbc.prefpanedir
+ @__qlplugindir = Hbc.qlplugindir
+ @__servicedir = Hbc.servicedir
+
+ @__argv = ARGV.dup
+ @__env = ENV.to_hash # dup doesn't work on ENV
+
+ example.run
+ ensure
+ ARGV.replace(@__argv)
+ ENV.replace(@__env)
+
+ Hbc.appdir = @__appdir
+ Hbc.caskroom = @__caskroom
+ Hbc.prefpanedir = @__prefpanedir
+ Hbc.qlplugindir = @__qlplugindir
+ Hbc.servicedir = @__servicedir
+
+ FileUtils.rm_rf [
+ Hbc.appdir.children,
+ Hbc.caskroom.children,
+ ]
+ end
end
end