2019-04-19 15:38:03 +09:00
|
|
|
# frozen_string_literal: true
|
|
|
|
|
2019-03-28 08:35:36 +00:00
|
|
|
require "cmd/shared_examples/args_parse"
|
2017-02-23 06:04:47 +01:00
|
|
|
|
2021-02-01 16:14:25 -05:00
|
|
|
describe "brew home" do
|
2023-03-08 23:14:46 +00:00
|
|
|
let(:testballhome_homepage) do
|
2020-06-22 10:46:59 -04:00
|
|
|
Formula["testballhome"].homepage
|
2023-03-08 23:14:46 +00:00
|
|
|
end
|
2020-06-22 10:46:59 -04:00
|
|
|
|
2023-03-08 23:14:46 +00:00
|
|
|
let(:local_caffeine_path) do
|
2020-06-22 15:55:51 -04:00
|
|
|
cask_path("local-caffeine")
|
2023-03-08 23:14:46 +00:00
|
|
|
end
|
2020-06-22 15:55:51 -04:00
|
|
|
|
2023-03-08 23:14:46 +00:00
|
|
|
let(:local_caffeine_homepage) do
|
2020-06-22 15:55:51 -04:00
|
|
|
Cask::CaskLoader.load(local_caffeine_path).homepage
|
2023-03-08 23:14:46 +00:00
|
|
|
end
|
2020-06-22 10:46:59 -04:00
|
|
|
|
2021-02-01 16:14:25 -05:00
|
|
|
it_behaves_like "parseable arguments"
|
|
|
|
|
|
|
|
it "opens the project page when no formula or cask is specified", :integration_test do
|
2020-08-11 09:12:19 -04:00
|
|
|
expect { brew "home", "HOMEBREW_BROWSER" => "echo" }
|
|
|
|
.to output("https://brew.sh\n").to_stdout
|
|
|
|
.and not_to_output.to_stderr
|
|
|
|
.and be_a_success
|
|
|
|
end
|
|
|
|
|
2021-02-01 16:14:25 -05:00
|
|
|
it "opens the homepage for a given Formula", :integration_test do
|
2017-09-05 17:44:27 +01:00
|
|
|
setup_test_formula "testballhome"
|
2017-02-23 06:04:47 +01:00
|
|
|
|
2017-09-05 17:44:27 +01:00
|
|
|
expect { brew "home", "testballhome", "HOMEBREW_BROWSER" => "echo" }
|
2020-06-23 09:44:17 -04:00
|
|
|
.to output(/#{testballhome_homepage}/).to_stdout
|
2020-06-22 10:46:59 -04:00
|
|
|
.and not_to_output.to_stderr
|
|
|
|
.and be_a_success
|
|
|
|
end
|
|
|
|
|
2022-09-28 21:57:13 -07:00
|
|
|
it "opens the homepage for a given Cask", :integration_test, :needs_macos do
|
2020-08-11 09:12:19 -04:00
|
|
|
expect { brew "home", local_caffeine_path, "HOMEBREW_BROWSER" => "echo" }
|
2021-01-27 10:03:44 -08:00
|
|
|
.to output(/#{local_caffeine_homepage}/).to_stdout
|
|
|
|
.and output(/Treating #{Regexp.escape(local_caffeine_path)} as a cask/).to_stderr
|
|
|
|
.and be_a_success
|
|
|
|
expect { brew "home", "--cask", local_caffeine_path, "HOMEBREW_BROWSER" => "echo" }
|
2020-06-22 16:07:18 -04:00
|
|
|
.to output(/#{local_caffeine_homepage}/).to_stdout
|
2020-06-22 10:46:59 -04:00
|
|
|
.and not_to_output.to_stderr
|
|
|
|
.and be_a_success
|
|
|
|
end
|
|
|
|
|
2022-10-01 17:33:11 -07:00
|
|
|
it "opens the homepages for a given formula and Cask", :integration_test, :needs_macos do
|
2020-06-22 10:46:59 -04:00
|
|
|
setup_test_formula "testballhome"
|
|
|
|
|
2020-08-11 09:12:19 -04:00
|
|
|
expect { brew "home", "testballhome", local_caffeine_path, "HOMEBREW_BROWSER" => "echo" }
|
2020-06-22 16:07:18 -04:00
|
|
|
.to output(/#{testballhome_homepage} #{local_caffeine_homepage}/).to_stdout
|
2021-01-27 10:03:44 -08:00
|
|
|
.and output(/Treating #{Regexp.escape(local_caffeine_path)} as a cask/).to_stderr
|
2017-02-23 06:04:47 +01:00
|
|
|
.and be_a_success
|
|
|
|
end
|
|
|
|
end
|