Skip to content

Commit

Permalink
Merge pull request #18275 from Homebrew/use-formula-installer-os-exte…
Browse files Browse the repository at this point in the history
…nsions

Use FormulaInstaller OS extensions
  • Loading branch information
dduugg committed Sep 7, 2024
2 parents 9978c3d + fedb868 commit faed92b
Show file tree
Hide file tree
Showing 3 changed files with 58 additions and 0 deletions.
2 changes: 2 additions & 0 deletions Library/Homebrew/formula_installer.rb
Original file line number Diff line number Diff line change
Expand Up @@ -1546,3 +1546,5 @@ def puts_requirement_messages
$stderr.puts @requirement_messages
end
end

require "extend/os/formula_installer"
25 changes: 25 additions & 0 deletions Library/Homebrew/test/os/linux/formula_installer_spec.rb
Original file line number Diff line number Diff line change
@@ -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 changes: 31 additions & 0 deletions Library/Homebrew/test/os/mac/formula_installer_spec.rb
Original file line number Diff line number Diff line change
@@ -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

0 comments on commit faed92b

Please sign in to comment.