extend tests
This commit is contained in:
parent
ea4fb0fe09
commit
7380f58173
@ -30,6 +30,52 @@ describe RuboCop::Cop::FormulaAudit do
|
||||
RUBY
|
||||
end
|
||||
|
||||
it "reports an offense when writing to a shell completions file differing from the formula name" do
|
||||
expect_offense(<<~RUBY, "/homebrew-core/Formula/foo-cli.rb")
|
||||
class FooCli < Formula
|
||||
name "foo-cli"
|
||||
|
||||
def install
|
||||
(bash_completion/"foo").write Utils.safe_popen_read(bin/"foo", "completions", "bash")
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Use `generate_completions_from_executable(bin/"foo", "completions", base_name: "foo", shells: [:bash])` instead of `(bash_completion/"foo").write Utils.safe_popen_read(bin/"foo", "completions", "bash")`.
|
||||
end
|
||||
end
|
||||
RUBY
|
||||
|
||||
expect_correction(<<~RUBY)
|
||||
class FooCli < Formula
|
||||
name "foo-cli"
|
||||
|
||||
def install
|
||||
generate_completions_from_executable(bin/"foo", "completions", base_name: "foo", shells: [:bash])
|
||||
end
|
||||
end
|
||||
RUBY
|
||||
end
|
||||
|
||||
it "reports an offense when writing to a shell completions file using an arg for the shell parameter" do
|
||||
expect_offense(<<~RUBY, "/homebrew-core/Formula/foo.rb")
|
||||
class Foo < Formula
|
||||
name "foo"
|
||||
|
||||
def install
|
||||
(bash_completion/"foo").write Utils.safe_popen_read(bin/"foo", "completions", "--shell=bash")
|
||||
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^ Use `generate_completions_from_executable(bin/"foo", "completions", shells: [:bash], shell_parameter_format: :arg)` instead of `(bash_completion/"foo").write Utils.safe_popen_read(bin/"foo", "completions", "--shell=bash")`.
|
||||
end
|
||||
end
|
||||
RUBY
|
||||
|
||||
expect_correction(<<~RUBY)
|
||||
class Foo < Formula
|
||||
name "foo"
|
||||
|
||||
def install
|
||||
generate_completions_from_executable(bin/"foo", "completions", shells: [:bash], shell_parameter_format: :arg)
|
||||
end
|
||||
end
|
||||
RUBY
|
||||
end
|
||||
|
||||
it "reports an offense when writing to a completions file indirectly" do
|
||||
expect_offense(<<~RUBY)
|
||||
class Foo < Formula
|
||||
|
||||
Loading…
x
Reference in New Issue
Block a user