Skip to content

Commit

Permalink
fixup! Further simplify Pending cop
Browse files Browse the repository at this point in the history
  • Loading branch information
pirj committed Aug 11, 2019
1 parent 3d908ff commit 6a5b595
Showing 1 changed file with 8 additions and 11 deletions.
19 changes: 8 additions & 11 deletions lib/rubocop/cop/rspec/pending.rb
Expand Up @@ -39,29 +39,26 @@ class Pending < Cop

def_node_matcher :skippable?, SKIPPABLE.send_pattern

def_node_matcher :skipped_in_symbol_metadata?, <<-PATTERN
(send _ _ <#skip_or_pending? ...>)
PATTERN

def_node_matcher :skipped_in_hash_metadata?, <<-PATTERN
(send _ _ ... (hash <(pair #skip_or_pending? true) ...>))
def_node_matcher :skipped_in_metadata?, <<-PATTERN
{
(send _ _ <#skip_or_pending? ...>)
(send _ _ ... (hash <(pair #skip_or_pending? true) ...>))
}
PATTERN

def_node_matcher :skip_or_pending?, '{(sym :skip) (sym :pending)}'
def_node_matcher :pending_block?, PENDING.send_pattern

def on_send(node)
return unless pending_block?(node) || skipped_in_metadata?(node)
return unless pending_block?(node) || skipped?(node)

add_offense(node)
end

private

def skipped_in_metadata?(node)
return unless skippable?(node)

skipped_in_hash_metadata?(node) || skipped_in_symbol_metadata?(node)
def skipped?(node)
skippable?(node) && skipped_in_metadata?(node)
end
end
end
Expand Down

0 comments on commit 6a5b595

Please sign in to comment.