mirror of
https://github.com/Homebrew/brew.git
synced 2025-07-14 16:09:03 +08:00

There were a few tests which require core to be tapped and fail if it isn't. This is annoying if someone is trying to contribute to the project and they're using the JSON API instead of having the core repo tapped locally. I'm just skipping these because it's the simplest thing to do. The tests that failed are mostly rubocop tests so it's fine if they only run on CI.
37 lines
1.1 KiB
Ruby
37 lines
1.1 KiB
Ruby
# frozen_string_literal: true
|
|
|
|
require "cmd/--prefix"
|
|
require "cmd/shared_examples/args_parse"
|
|
|
|
RSpec.describe Homebrew::Cmd::Prefix do
|
|
it_behaves_like "parseable arguments"
|
|
|
|
it "prints Homebrew's prefix", :integration_test do
|
|
expect { brew_sh "--prefix" }
|
|
.to output("#{ENV.fetch("HOMEBREW_PREFIX")}\n").to_stdout
|
|
.and not_to_output.to_stderr
|
|
.and be_a_success
|
|
end
|
|
|
|
it "prints the prefix for a Formula", :integration_test, :needs_homebrew_core do
|
|
expect { brew_sh "--prefix", "wget" }
|
|
.to output("#{ENV.fetch("HOMEBREW_PREFIX")}/opt/wget\n").to_stdout
|
|
.and not_to_output.to_stderr
|
|
.and be_a_success
|
|
end
|
|
|
|
it "errors if the given Formula doesn't exist", :integration_test do
|
|
expect { brew "--prefix", "nonexistent" }
|
|
.to output(/No available formula/).to_stderr
|
|
.and not_to_output.to_stdout
|
|
.and be_a_failure
|
|
end
|
|
|
|
it "prints a warning when `--installed` is used and the given Formula is not installed", :integration_test do
|
|
expect { brew "--prefix", "--installed", testball }
|
|
.to not_to_output.to_stdout
|
|
.and output(/testball/).to_stderr
|
|
.and be_a_failure
|
|
end
|
|
end
|