From 89c7117b30cc8ac942c34492eb7210c4b5445793 Mon Sep 17 00:00:00 2001 From: Douglas Eichelberger Date: Sun, 22 Jan 2023 17:03:27 -0800 Subject: [PATCH] Resolve dependable_spec violation --- Library/Homebrew/dependable.rb | 2 ++ Library/Homebrew/dependable.rbi | 5 ----- Library/Homebrew/dependency.rb | 2 +- Library/Homebrew/requirement.rb | 2 +- Library/Homebrew/test/dependable_spec.rb | 11 ++++++++--- 5 files changed, 12 insertions(+), 10 deletions(-) delete mode 100644 Library/Homebrew/dependable.rbi diff --git a/Library/Homebrew/dependable.rb b/Library/Homebrew/dependable.rb index f9ebf7d74f..bbea4446db 100644 --- a/Library/Homebrew/dependable.rb +++ b/Library/Homebrew/dependable.rb @@ -11,6 +11,8 @@ module Dependable # misuse in future. RESERVED_TAGS = [:build, :optional, :recommended, :run, :test, :linked].freeze + attr_reader :tags + def build? tags.include? :build end diff --git a/Library/Homebrew/dependable.rbi b/Library/Homebrew/dependable.rbi deleted file mode 100644 index c8eda0640b..0000000000 --- a/Library/Homebrew/dependable.rbi +++ /dev/null @@ -1,5 +0,0 @@ -# typed: strict - -module Dependable - def tags; end -end diff --git a/Library/Homebrew/dependency.rb b/Library/Homebrew/dependency.rb index 41c88a8a89..d556924d74 100644 --- a/Library/Homebrew/dependency.rb +++ b/Library/Homebrew/dependency.rb @@ -13,7 +13,7 @@ class Dependency include Dependable extend Cachable - attr_reader :name, :tags, :env_proc, :option_names + attr_reader :name, :env_proc, :option_names DEFAULT_ENV_PROC = proc {}.freeze private_constant :DEFAULT_ENV_PROC diff --git a/Library/Homebrew/requirement.rb b/Library/Homebrew/requirement.rb index 510e7836b7..39bd77469e 100644 --- a/Library/Homebrew/requirement.rb +++ b/Library/Homebrew/requirement.rb @@ -17,7 +17,7 @@ class Requirement include Dependable extend Cachable - attr_reader :tags, :name, :cask, :download + attr_reader :name, :cask, :download def initialize(tags = []) # Only allow instances of subclasses. This base class enforces no constraints on its own. diff --git a/Library/Homebrew/test/dependable_spec.rb b/Library/Homebrew/test/dependable_spec.rb index 12fabd6f3e..8f10a09377 100644 --- a/Library/Homebrew/test/dependable_spec.rb +++ b/Library/Homebrew/test/dependable_spec.rb @@ -6,9 +6,14 @@ require "dependable" describe Dependable do alias_matcher :be_a_build_dependency, :be_build - subject(:dependable) { double(tags: tags).extend(described_class) } - - let(:tags) { ["foo", "bar", :build] } + subject(:dependable) { + Class.new { + include Dependable + def initialize + @tags = ["foo", "bar", :build] + end + }.new + } specify "#options" do expect(dependable.options.as_flags.sort).to eq(%w[--foo --bar].sort)