Use FormulaInstaller OS extensions
This commit is contained in:
parent
9978c3d11a
commit
5d5daaa09f
@ -1546,3 +1546,5 @@ on_request: installed_on_request?, options:)
|
|||||||
$stderr.puts @requirement_messages
|
$stderr.puts @requirement_messages
|
||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
require "extend/os/formula_installer"
|
||||||
|
@ -450,6 +450,27 @@ RSpec.describe FormulaInstaller do
|
|||||||
end
|
end
|
||||||
end
|
end
|
||||||
|
|
||||||
|
describe "#fresh_install" do
|
||||||
|
subject(:formula_installer) { described_class.new(Testball.new) }
|
||||||
|
|
||||||
|
it "is false by default" do
|
||||||
|
formula = Testball.new
|
||||||
|
expect(formula_installer.fresh_install?(formula)).to be false
|
||||||
|
end
|
||||||
|
|
||||||
|
it "is false in developer mode" do
|
||||||
|
formula = Testball.new
|
||||||
|
allow(Homebrew::EnvConfig).to receive_messages(developer?: true)
|
||||||
|
expect(formula_installer.fresh_install?(formula)).to be false
|
||||||
|
end
|
||||||
|
|
||||||
|
it "is false on outdated releases" do
|
||||||
|
formula = Testball.new
|
||||||
|
allow(OS::Mac.version).to receive_messages(outdated_release?: true)
|
||||||
|
expect(formula_installer.fresh_install?(formula)).to be false
|
||||||
|
end
|
||||||
|
end
|
||||||
|
|
||||||
describe "#install_service" do
|
describe "#install_service" do
|
||||||
it "works if service is set" do
|
it "works if service is set" do
|
||||||
formula = Testball.new
|
formula = Testball.new
|
||||||
|
25
Library/Homebrew/test/os/linux/formula_installer_spec.rb
Normal file
25
Library/Homebrew/test/os/linux/formula_installer_spec.rb
Normal file
@ -0,0 +1,25 @@
|
|||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
require "formula_installer"
|
||||||
|
require "test/support/fixtures/testball"
|
||||||
|
|
||||||
|
RSpec.describe FormulaInstaller do
|
||||||
|
include FileUtils
|
||||||
|
|
||||||
|
subject(:keg) { described_class.new(keg_path) }
|
||||||
|
|
||||||
|
describe "#fresh_install" do
|
||||||
|
subject(:formula_installer) { described_class.new(Testball.new) }
|
||||||
|
|
||||||
|
it "is true by default" do
|
||||||
|
formula = Testball.new
|
||||||
|
expect(formula_installer.fresh_install?(formula)).to be true
|
||||||
|
end
|
||||||
|
|
||||||
|
it "is false in developer mode" do
|
||||||
|
formula = Testball.new
|
||||||
|
allow(Homebrew::EnvConfig).to receive_messages(developer?: true)
|
||||||
|
expect(formula_installer.fresh_install?(formula)).to be false
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
31
Library/Homebrew/test/os/mac/formula_installer_spec.rb
Normal file
31
Library/Homebrew/test/os/mac/formula_installer_spec.rb
Normal file
@ -0,0 +1,31 @@
|
|||||||
|
# frozen_string_literal: true
|
||||||
|
|
||||||
|
require "formula_installer"
|
||||||
|
require "test/support/fixtures/testball"
|
||||||
|
|
||||||
|
RSpec.describe FormulaInstaller do
|
||||||
|
include FileUtils
|
||||||
|
|
||||||
|
subject(:keg) { described_class.new(keg_path) }
|
||||||
|
|
||||||
|
describe "#fresh_install" do
|
||||||
|
subject(:formula_installer) { described_class.new(Testball.new) }
|
||||||
|
|
||||||
|
it "is true by default" do
|
||||||
|
formula = Testball.new
|
||||||
|
expect(formula_installer.fresh_install?(formula)).to be true
|
||||||
|
end
|
||||||
|
|
||||||
|
it "is false in developer mode" do
|
||||||
|
formula = Testball.new
|
||||||
|
allow(Homebrew::EnvConfig).to receive_messages(developer?: true)
|
||||||
|
expect(formula_installer.fresh_install?(formula)).to be false
|
||||||
|
end
|
||||||
|
|
||||||
|
it "is false on outdated releases" do
|
||||||
|
formula = Testball.new
|
||||||
|
allow(OS::Mac.version).to receive_messages(outdated_release?: true)
|
||||||
|
expect(formula_installer.fresh_install?(formula)).to be false
|
||||||
|
end
|
||||||
|
end
|
||||||
|
end
|
Loading…
x
Reference in New Issue
Block a user