aboutsummaryrefslogtreecommitdiffstats
path: root/Library
diff options
context:
space:
mode:
authorGautham Goli2017-08-13 14:50:29 +0530
committerGautham Goli2017-08-13 14:50:29 +0530
commit77105b809a83583e3da5726105dc9cd913112913 (patch)
treeb418e953b336745fddd5b62e19b425654e5cbe7f /Library
parent686fc514cfd7ddd18484c37b177dc2b8298d129b (diff)
downloadbrew-77105b809a83583e3da5726105dc9cd913112913.tar.bz2
Add tests for macOS check
Diffstat (limited to 'Library')
-rw-r--r--Library/Homebrew/rubocops/lines_cop.rb14
-rw-r--r--Library/Homebrew/test/rubocops/lines_cop_spec.rb21
2 files changed, 28 insertions, 7 deletions
diff --git a/Library/Homebrew/rubocops/lines_cop.rb b/Library/Homebrew/rubocops/lines_cop.rb
index 8d4b99825..604de5af9 100644
--- a/Library/Homebrew/rubocops/lines_cop.rb
+++ b/Library/Homebrew/rubocops/lines_cop.rb
@@ -248,13 +248,13 @@ module RuboCop
next unless method_called?(m, :new)
problem "`depends_on` can take requirement classes instead of instances"
end
- #
- # os = [:leopard?, :snow_leopard?, :lion?, :mountain_lion?]
- # os.each do |version|
- # find_instance_method_call(body_node, :MacOS, version) do |m|
- # problem "\"#{m.source}\" is deprecated, use a comparison to MacOS.version instead"
- # end
- # end
+
+ os = [:leopard?, :snow_leopard?, :lion?, :mountain_lion?]
+ os.each do |version|
+ find_instance_method_call(body_node, "MacOS", version) do |m|
+ problem "\"#{m.source}\" is deprecated, use a comparison to MacOS.version instead"
+ end
+ end
#
# dirPattern(body_node) do |m|
# next unless m =~ /\[("[^\*{},]+")\]/
diff --git a/Library/Homebrew/test/rubocops/lines_cop_spec.rb b/Library/Homebrew/test/rubocops/lines_cop_spec.rb
index aca9a7209..69caee80c 100644
--- a/Library/Homebrew/test/rubocops/lines_cop_spec.rb
+++ b/Library/Homebrew/test/rubocops/lines_cop_spec.rb
@@ -531,6 +531,27 @@ describe RuboCop::Cop::FormulaAudit::Miscellaneous do
expect_offense(expected, actual)
end
end
+ it "with old style OS check" do
+ source = <<-EOS.undent
+ class Foo < Formula
+ desc "foo"
+ url 'http://example.com/foo-1.0.tgz'
+ depends_on :foo if MacOS.snow_leopard?
+ end
+ EOS
+
+ expected_offenses = [{ message: "\"MacOS.snow_leopard?\" is deprecated, use a comparison to MacOS.version instead",
+ severity: :convention,
+ line: 4,
+ column: 21,
+ source: source }]
+
+ inspect_source(cop, source)
+
+ expected_offenses.zip(cop.offenses).each do |expected, actual|
+ expect_offense(expected, actual)
+ end
+ end
end
def expect_offense(expected, actual)
expect(actual.message).to eq(expected[:message])