Merge pull request #14367 from Homebrew/dependabot/bundler/Library/Homebrew/rubocop-rspec-2.17.0

build(deps): bump rubocop-rspec from 2.16.0 to 2.17.0 in /Library/Homebrew
This commit is contained in:
Mike McQuaid 2023-01-13 21:15:31 +00:00 committed by GitHub
commit 3e257890da
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
148 changed files with 181 additions and 21 deletions

View File

@ -151,7 +151,7 @@ GEM
activesupport (>= 4.2.0)
rack (>= 1.1)
rubocop (>= 1.33.0, < 2.0)
rubocop-rspec (2.16.0)
rubocop-rspec (2.17.0)
rubocop (~> 1.33)
rubocop-sorbet (0.6.11)
rubocop (>= 0.90.0)

View File

@ -173,6 +173,20 @@ end
RuboCop::Cop::RSpec::Capybara::FeatureMethods::MAP = T.let(T.unsafe(nil), Hash)
RuboCop::Cop::RSpec::Capybara::FeatureMethods::MSG = T.let(T.unsafe(nil), String)
class RuboCop::Cop::RSpec::Capybara::MatchStyle < ::RuboCop::Cop::RSpec::Base
extend ::RuboCop::Cop::AutoCorrector
def on_send(node); end
private
def message(node); end
end
RuboCop::Cop::RSpec::Capybara::MatchStyle::MSG = T.let(T.unsafe(nil), String)
RuboCop::Cop::RSpec::Capybara::MatchStyle::PREFERRED_METHOD = T.let(T.unsafe(nil), Hash)
RuboCop::Cop::RSpec::Capybara::MatchStyle::RESTRICT_ON_SEND = T.let(T.unsafe(nil), Array)
class RuboCop::Cop::RSpec::Capybara::NegationMatcher < ::RuboCop::Cop::Base
include ::RuboCop::Cop::ConfigurableEnforcedStyle
extend ::RuboCop::Cop::AutoCorrector
@ -1465,12 +1479,11 @@ class RuboCop::Cop::RSpec::PendingWithoutReason < ::RuboCop::Cop::RSpec::Base
def skipped_by_example_group_method?(param0 = T.unsafe(nil)); end
def skipped_by_example_method?(param0 = T.unsafe(nil)); end
def skipped_by_metadata_without_reason?(param0 = T.unsafe(nil)); end
def without_reason?(param0 = T.unsafe(nil)); end
private
def pending_by_pending_step_without_reason?(node); end
def pending_without_reason?(node); end
def skipped_by_skip_step_without_reason?(node); end
def skipped_without_reason?(node); end
end
@ -1582,6 +1595,21 @@ end
RuboCop::Cop::RSpec::Rails::InferredSpecType::MSG = T.let(T.unsafe(nil), String)
class RuboCop::Cop::RSpec::Rails::MinitestAssertions < ::RuboCop::Cop::RSpec::Base
extend ::RuboCop::Cop::AutoCorrector
def minitest_assertion(param0 = T.unsafe(nil)); end
def on_send(node); end
private
def message(prefer); end
def replacement(node, expected, actual, failure_message); end
end
RuboCop::Cop::RSpec::Rails::MinitestAssertions::MSG = T.let(T.unsafe(nil), String)
RuboCop::Cop::RSpec::Rails::MinitestAssertions::RESTRICT_ON_SEND = T.let(T.unsafe(nil), Array)
class RuboCop::Cop::RSpec::ReceiveCounts < ::RuboCop::Cop::RSpec::Base
extend ::RuboCop::Cop::AutoCorrector

View File

@ -6755,6 +6755,7 @@ end
module RuboCop::AST::NodePattern::Sets
SET_ARM_INTEL = ::T.let(nil, ::T.untyped)
SET_ASSERT_EQUAL_REFUTE_EQUAL = ::T.let(nil, ::T.untyped)
SET_BASH_COMPLETION_ZSH_COMPLETION_FISH_COMPLETION = ::T.let(nil, ::T.untyped)
SET_BUILD_RECOMMENDED_TEST_OPTIONAL = ::T.let(nil, ::T.untyped)
SET_DEPENDS_ON_USES_FROM_MACOS = ::T.let(nil, ::T.untyped)

View File

@ -107,7 +107,7 @@ $:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/rubocop-1.43.0/lib")
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/rubocop-performance-1.15.2/lib")
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/rubocop-rails-2.17.4/lib")
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/rubocop-rspec-2.16.0/lib")
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/rubocop-rspec-2.17.0/lib")
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/rubocop-sorbet-0.6.11/lib")
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/ruby-macho-3.0.0/lib")
$:.unshift File.expand_path("#{__dir__}/../#{RUBY_ENGINE}/#{Gem.ruby_api_version}/gems/simplecov-html-0.12.3/lib")

View File

@ -887,6 +887,12 @@ RSpec/Capybara/FeatureMethods:
VersionChanged: '2.0'
Reference: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/Capybara/FeatureMethods
RSpec/Capybara/MatchStyle:
Description: Checks for usage of deprecated style methods.
Enabled: pending
VersionAdded: '2.17'
Reference: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/Capybara/MatchStyle
RSpec/Capybara/NegationMatcher:
Description: Enforces use of `have_no_*` or `not_to` for negated expectations.
Enabled: pending
@ -1044,3 +1050,9 @@ RSpec/Rails/InferredSpecType:
routing: routing
system: system
views: view
RSpec/Rails/MinitestAssertions:
Description: Check if using Minitest matchers.
Enabled: pending
VersionAdded: '2.17'
Reference: https://www.rubydoc.info/gems/rubocop-rspec/RuboCop/Cop/RSpec/Rails/MinitestAssertions

View File

@ -0,0 +1,60 @@
# frozen_string_literal: true
module RuboCop
module Cop
module RSpec
module Capybara
# Checks for usage of deprecated style methods.
#
# @example when using `assert_style`
# # bad
# page.find(:css, '#first').assert_style(display: 'block')
#
# # good
# page.find(:css, '#first').assert_matches_style(display: 'block')
#
# @example when using `has_style?`
# # bad
# expect(page.find(:css, 'first')
# .has_style?(display: 'block')).to be true
#
# # good
# expect(page.find(:css, 'first')
# .matches_style?(display: 'block')).to be true
#
# @example when using `have_style`
# # bad
# expect(page).to have_style(display: 'block')
#
# # good
# expect(page).to match_style(display: 'block')
#
class MatchStyle < Base
extend AutoCorrector
MSG = 'Use `%<good>s` instead of `%<bad>s`.'
RESTRICT_ON_SEND = %i[assert_style has_style? have_style].freeze
PREFERRED_METHOD = {
'assert_style' => 'assert_matches_style',
'has_style?' => 'matches_style?',
'have_style' => 'match_style'
}.freeze
def on_send(node)
method_node = node.loc.selector
add_offense(method_node) do |corrector|
corrector.replace(method_node,
PREFERRED_METHOD[method_node.source])
end
end
private
def message(node)
format(MSG, good: PREFERRED_METHOD[node.source], bad: node.source)
end
end
end
end
end
end

View File

@ -10,7 +10,6 @@ module RuboCop
# include `if`, `unless`, `for`, `before`, `after`, or `during`.
# They may consist of multiple words if desired.
#
# @see https://rspec.rubystyle.guide/#context-descriptions
# @see http://www.betterspecs.org/#contexts
#
# @example `Prefixes` configuration

View File

@ -87,35 +87,33 @@ module RuboCop
(send #rspec? {#ExampleGroups.all #Examples.all} ... {<(sym :skip) ...> (hash <(pair (sym :skip) true) ...>)})
PATTERN
# @!method without_reason?(node)
def_node_matcher :without_reason?, <<~PATTERN
(send nil? ${:pending :skip})
PATTERN
def on_send(node)
if pending_without_reason?(node)
add_offense(node, message: 'Give the reason for pending.')
elsif skipped_without_reason?(node)
add_offense(node, message: 'Give the reason for skip.')
elsif without_reason?(node) && example?(node.parent)
add_offense(node,
message: "Give the reason for #{node.method_name}.")
end
end
private
def pending_by_pending_step_without_reason?(node)
node.method?(:pending) && node.first_argument.nil?
end
def pending_without_reason?(node)
pending_by_example_method?(node.block_node) ||
pending_by_metadata_without_reason?(node) ||
pending_by_pending_step_without_reason?(node)
end
def skipped_by_skip_step_without_reason?(node)
node.method?(:skip) && node.first_argument.nil?
pending_by_metadata_without_reason?(node)
end
def skipped_without_reason?(node)
skipped_by_example_group_method?(node.block_node) ||
skipped_by_example_method?(node.block_node) ||
skipped_by_metadata_without_reason?(node) ||
skipped_by_skip_step_without_reason?(node)
skipped_by_metadata_without_reason?(node)
end
end
end

View File

@ -179,7 +179,8 @@ module RuboCop
return false if allowed_explicit_matchers.include?(name)
name.start_with?('be_', 'have_') && !name.end_with?('?')
name.start_with?('be_', 'have_') && !name.end_with?('?') ||
%w[include respond_to].include?(name)
end
def message_explicit(matcher)

Some files were not shown because too many files have changed in this diff Show More