diff --git a/Library/Homebrew/dev-cmd/bump-unversioned-casks.rb b/Library/Homebrew/dev-cmd/bump-unversioned-casks.rb index 15faafce13..47d064ed64 100644 --- a/Library/Homebrew/dev-cmd/bump-unversioned-casks.rb +++ b/Library/Homebrew/dev-cmd/bump-unversioned-casks.rb @@ -12,7 +12,7 @@ require "unversioned_cask_checker" module Homebrew module DevCmd - class BumpUnversionedCask < AbstractCommand + class BumpUnversionedCasks < AbstractCommand include SystemCommand::Mixin cmd_args do diff --git a/Library/Homebrew/test/abstract_command_spec.rb b/Library/Homebrew/test/abstract_command_spec.rb index 2ee39c6708..527a78e0b7 100644 --- a/Library/Homebrew/test/abstract_command_spec.rb +++ b/Library/Homebrew/test/abstract_command_spec.rb @@ -54,4 +54,21 @@ RSpec.describe Homebrew::AbstractCommand do end end end + + describe "command paths" do + it "match command name" do + # Ensure all commands are loaded + ["cmd", "dev-cmd"].each do |dir| + Dir[File.join(__dir__, "../#{dir}", "*.rb")].each { require(_1) } + end + test_classes = ["Cat", "Tac"] + + described_class.subclasses.each do |klass| + next if test_classes.include?(klass.name) + + dir = klass.name.start_with?("Homebrew::DevCmd") ? "dev-cmd" : "cmd" + expect(Pathname(File.join(__dir__, "../#{dir}/#{klass.command_name}.rb"))).to exist + end + end + end end diff --git a/Library/Homebrew/test/dev-cmd/bump-unversioned-casks_spec.rb b/Library/Homebrew/test/dev-cmd/bump-unversioned-casks_spec.rb index a7ab01f2c2..f6c6936307 100644 --- a/Library/Homebrew/test/dev-cmd/bump-unversioned-casks_spec.rb +++ b/Library/Homebrew/test/dev-cmd/bump-unversioned-casks_spec.rb @@ -3,6 +3,6 @@ require "cmd/shared_examples/args_parse" require "dev-cmd/bump-unversioned-casks" -RSpec.describe Homebrew::DevCmd::BumpUnversionedCask do +RSpec.describe Homebrew::DevCmd::BumpUnversionedCasks do it_behaves_like "parseable arguments", argv: ["foo"] end