diff options
| author | Gautham Goli | 2017-08-12 23:28:08 +0530 |
|---|---|---|
| committer | Gautham Goli | 2017-08-12 23:28:08 +0530 |
| commit | 686fc514cfd7ddd18484c37b177dc2b8298d129b (patch) | |
| tree | e8ddd4074c1fd632ac306791772747400262be3f /Library/Homebrew/test | |
| parent | 087c1ca8d660f5604f9e9f31e3c4c18cb98d91bd (diff) | |
| download | brew-686fc514cfd7ddd18484c37b177dc2b8298d129b.tar.bz2 | |
Add tests for assert match and depends_on instance audit rules
Diffstat (limited to 'Library/Homebrew/test')
| -rw-r--r-- | Library/Homebrew/test/rubocops/lines_cop_spec.rb | 68 |
1 files changed, 68 insertions, 0 deletions
diff --git a/Library/Homebrew/test/rubocops/lines_cop_spec.rb b/Library/Homebrew/test/rubocops/lines_cop_spec.rb index 293a415a5..aca9a7209 100644 --- a/Library/Homebrew/test/rubocops/lines_cop_spec.rb +++ b/Library/Homebrew/test/rubocops/lines_cop_spec.rb @@ -50,6 +50,12 @@ describe RuboCop::Cop::FormulaAudit::Lines do end 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]) + end end describe RuboCop::Cop::FormulaAudit::ClassInheritance do @@ -77,6 +83,12 @@ describe RuboCop::Cop::FormulaAudit::ClassInheritance do end 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]) + end end describe RuboCop::Cop::FormulaAudit::Comments do @@ -149,6 +161,12 @@ describe RuboCop::Cop::FormulaAudit::Comments do end 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]) + end end describe RuboCop::Cop::FormulaAudit::Miscellaneous do @@ -469,5 +487,55 @@ describe RuboCop::Cop::FormulaAudit::Miscellaneous do expect_offense(expected, actual) end end + + it "with assert include" do + source = <<-EOS.undent + class Foo < Formula + desc "foo" + url 'http://example.com/foo-1.0.tgz' + assert File.read("inbox").include?("Sample message 1") + end + EOS + + expected_offenses = [{ message: "Use `assert_match` instead of `assert ...include?`", + severity: :convention, + line: 4, + column: 9, + source: source }] + + inspect_source(cop, source) + + expected_offenses.zip(cop.offenses).each do |expected, actual| + expect_offense(expected, actual) + end + end + + it "depends_on with an instance as an argument" do + source = <<-EOS.undent + class Foo < Formula + desc "foo" + url 'http://example.com/foo-1.0.tgz' + depends_on FOO::BAR.new + end + EOS + + expected_offenses = [{ message: "`depends_on` can take requirement classes instead of instances", + severity: :convention, + line: 4, + column: 13, + 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]) + expect(actual.severity).to eq(expected[:severity]) + expect(actual.line).to eq(expected[:line]) + expect(actual.column).to eq(expected[:column]) end end |
