diff --git a/Library/Homebrew/rubocops/shared/desc_helper.rb b/Library/Homebrew/rubocops/shared/desc_helper.rb index e393b7835bc1ebd06f0f5221111c524197439522..8e43f1f39f442742f29f208a574ea001d58eeda3 100644 --- a/Library/Homebrew/rubocops/shared/desc_helper.rb +++ b/Library/Homebrew/rubocops/shared/desc_helper.rb @@ -65,7 +65,7 @@ module RuboCop problem "Description shouldn't start with the #{type} name." if regex_match_group(desc, /^#{name_regex}\b/i) if type == :cask && - (match = regex_match_group(desc, /\b(macOS|Mac( ?OS( ?X)?)?|OS ?X)\b/i)) && + (match = regex_match_group(desc, /\b(macOS|Mac( ?OS( ?X)?)?|OS ?X)(?! virtual machines?)\b/i)) && match[1] != "MAC" problem "Description shouldn't contain the platform." end diff --git a/Library/Homebrew/test/rubocops/cask/desc_spec.rb b/Library/Homebrew/test/rubocops/cask/desc_spec.rb index 8b06c40a12a71b99521ff6168b0f901db4f129d5..f27722b459f4a8d36dbda176596d69658f2d1ab4 100644 --- a/Library/Homebrew/test/rubocops/cask/desc_spec.rb +++ b/Library/Homebrew/test/rubocops/cask/desc_spec.rb @@ -93,6 +93,19 @@ describe RuboCop::Cop::Cask::Desc do end RUBY + expect_no_offenses <<~RUBY + cask 'foo' do + desc 'Application for managing macOS virtual machines' + end + RUBY + + expect_offense <<~RUBY + cask 'foo' do + desc 'Application for managing macOS virtual machines on macOS' + ^^^^^ Description shouldn\'t contain the platform. + end + RUBY + expect_no_offenses <<~RUBY cask 'foo' do desc 'MAC address changer'