aboutsummaryrefslogtreecommitdiffstats
path: root/Library/Homebrew/test/rubocops
diff options
context:
space:
mode:
authorMike McQuaid2017-06-08 15:44:30 +0300
committerGitHub2017-06-08 15:44:30 +0300
commite25b1a3a960bd79f3fec1539a4ef52e86dfabc00 (patch)
treeebf89ef458fa395081d6c955b147230b13bc3c0c /Library/Homebrew/test/rubocops
parente287c83d8b3b1a632ba76d26d05dbeeafb7e724c (diff)
parentc572081f8b56f3be24f24e85497ae780a25cbcba (diff)
downloadbrew-e25b1a3a960bd79f3fec1539a4ef52e86dfabc00.tar.bz2
Merge pull request #2748 from MikeMcQuaid/desc-cop-tweaks
formula_desc_cop: tweak some rules.
Diffstat (limited to 'Library/Homebrew/test/rubocops')
-rw-r--r--Library/Homebrew/test/rubocops/formula_desc_cop_spec.rb55
1 files changed, 46 insertions, 9 deletions
diff --git a/Library/Homebrew/test/rubocops/formula_desc_cop_spec.rb b/Library/Homebrew/test/rubocops/formula_desc_cop_spec.rb
index f6436d6a3..4e684be46 100644
--- a/Library/Homebrew/test/rubocops/formula_desc_cop_spec.rb
+++ b/Library/Homebrew/test/rubocops/formula_desc_cop_spec.rb
@@ -3,7 +3,7 @@ require "rubocop/rspec/support"
require_relative "../../extend/string"
require_relative "../../rubocops/formula_desc_cop"
-describe RuboCop::Cop::FormulaAuditStrict::Desc do
+describe RuboCop::Cop::FormulaAuditStrict::DescLength do
subject(:cop) { described_class.new }
context "When auditing formula desc" do
@@ -31,7 +31,7 @@ describe RuboCop::Cop::FormulaAuditStrict::Desc do
source = <<-EOS.undent
class Foo < Formula
url 'http://example.com/foo-1.0.tgz'
- desc '#{"bar" * 30}'
+ desc 'Bar#{"bar" * 29}'
end
EOS
@@ -55,7 +55,7 @@ describe RuboCop::Cop::FormulaAuditStrict::Desc do
source = <<-EOS.undent
class Foo < Formula
url 'http://example.com/foo-1.0.tgz'
- desc '#{"bar" * 10}'\
+ desc 'Bar#{"bar" * 9}'\
'#{"foo" * 21}'
end
EOS
@@ -75,7 +75,13 @@ describe RuboCop::Cop::FormulaAuditStrict::Desc do
expect_offense(expected, actual)
end
end
+ end
+end
+describe RuboCop::Cop::FormulaAuditStrict::Desc do
+ subject(:cop) { described_class.new }
+
+ context "When auditing formula desc" do
it "When wrong \"command-line\" usage in desc" do
source = <<-EOS.undent
class Foo < Formula
@@ -104,7 +110,27 @@ describe RuboCop::Cop::FormulaAuditStrict::Desc do
end
EOS
- expected_offenses = [{ message: "Description shouldn't start with an indefinite article (An )",
+ expected_offenses = [{ message: "Description shouldn't start with an indefinite article i.e. \"An\"",
+ severity: :convention,
+ line: 3,
+ column: 8,
+ source: source }]
+
+ inspect_source(cop, source)
+ expected_offenses.zip(cop.offenses).each do |expected, actual|
+ expect_offense(expected, actual)
+ end
+ end
+
+ it "When an lowercase letter starts a desc" do
+ source = <<-EOS.undent
+ class Foo < Formula
+ url 'http://example.com/foo-1.0.tgz'
+ desc 'bar'
+ end
+ EOS
+
+ expected_offenses = [{ message: "Description should start with a capital letter",
severity: :convention,
line: 3,
column: 8,
@@ -136,11 +162,22 @@ describe RuboCop::Cop::FormulaAuditStrict::Desc do
end
end
- def expect_offense(expected, actual)
- expect(actual.message).to eq(expected[:message])
- expect(actual.severity).to eq(expected[:severity])
- expect(actual.line).to eq(expected[:line])
- expect(actual.column).to eq(expected[:column])
+ it "autocorrects all rules" do
+ source = <<-EOS.undent
+ class Foo < Formula
+ url 'http://example.com/foo-1.0.tgz'
+ desc ' an bar: commandline foo '
+ end
+ EOS
+ correct_source = <<-EOS.undent
+ class Foo < Formula
+ url 'http://example.com/foo-1.0.tgz'
+ desc 'an bar: command-line'
+ end
+ EOS
+
+ corrected_source = autocorrect_source(cop, source)
+ expect(corrected_source).to eq(correct_source)
end
end
end