diff --git a/Library/Homebrew/rubocops/cask/array_alphabetization.rb b/Library/Homebrew/rubocops/cask/array_alphabetization.rb index b4c0bc50fe..3ee5dbbf28 100644 --- a/Library/Homebrew/rubocops/cask/array_alphabetization.rb +++ b/Library/Homebrew/rubocops/cask/array_alphabetization.rb @@ -18,7 +18,7 @@ module RuboCop end end - array.each_descendant(:str).each_cons(2) do |first, second| + array.children.reject(&:dstr_type?).each_cons(2) do |first, second| next if first.source.downcase < second.source.downcase add_offense(second, message: "The `zap trash` paths should be in alphabetical order") do |corrector| diff --git a/Library/Homebrew/test/rubocops/cask/array_alphabetization_spec.rb b/Library/Homebrew/test/rubocops/cask/array_alphabetization_spec.rb index fddcf0ac2a..cd84115fe8 100644 --- a/Library/Homebrew/test/rubocops/cask/array_alphabetization_spec.rb +++ b/Library/Homebrew/test/rubocops/cask/array_alphabetization_spec.rb @@ -56,4 +56,17 @@ describe RuboCop::Cop::Cask::ArrayAlphabetization, :config do end CASK end + + it "ignores zap trash paths that have interpolation" do + expect_no_offenses(<<~CASK) + cask "foo" do + url "https://example.com/foo.zip" + + zap trash: [ + "~/Library/Application Support/Foo", + "~/Library/Application Support/Bar\#{version.major}", + ] + end + CASK + end end