diff --git a/Library/Homebrew/cmd/--repository.rb b/Library/Homebrew/cmd/--repository.rb index b42f8d27c3..d3691290de 100644 --- a/Library/Homebrew/cmd/--repository.rb +++ b/Library/Homebrew/cmd/--repository.rb @@ -1,32 +1,32 @@ # typed: strict # frozen_string_literal: true -require "cli/parser" +require "abstract_command" module Homebrew - module_function + module Cmd + class Repository < AbstractCommand + sig { override.returns(String) } + def self.command_name = "--repository" - sig { returns(CLI::Parser) } - def __repository_args - Homebrew::CLI::Parser.new do - description <<~EOS - Display where Homebrew's Git repository is located. + cmd_args do + description <<~EOS + Display where Homebrew's Git repository is located. - If `/` are provided, display where tap `/`'s directory is located. - EOS + If `/` are provided, display where tap `/`'s directory is located. + EOS - named_args :tap - end - end + named_args :tap + end - sig { void } - def __repository - args = __repository_args.parse - - if args.no_named? - puts HOMEBREW_REPOSITORY - else - puts args.named.to_taps.map(&:path) + sig { override.void } + def run + if args.no_named? + puts HOMEBREW_REPOSITORY + else + puts args.named.to_taps.map(&:path) + end + end end end end diff --git a/Library/Homebrew/test/cmd/--repository_spec.rb b/Library/Homebrew/test/cmd/--repository_spec.rb index c56ef7b52e..1fcc495044 100644 --- a/Library/Homebrew/test/cmd/--repository_spec.rb +++ b/Library/Homebrew/test/cmd/--repository_spec.rb @@ -1,8 +1,9 @@ # frozen_string_literal: true +require "cmd/--repository" require "cmd/shared_examples/args_parse" -RSpec.describe "brew --repository" do +RSpec.describe Homebrew::Cmd::Repository do it_behaves_like "parseable arguments" it "prints Homebrew's repository", :integration_test do