Class: RuboCop::Cop::RSpec::Pending
- Includes:
- SkipOrPending
- Defined in:
- lib/rubocop/cop/rspec/pending.rb
Overview
Checks for any pending or skipped examples.
Constant Summary collapse
- MSG =
'Pending spec found.'
Instance Method Summary collapse
- #on_send(node) ⇒ Object
- #pending_block?(node) ⇒ Object
- #skippable?(node) ⇒ Object
- #skippable_example?(node) ⇒ Object
Methods included from SkipOrPending
#skip_or_pending_inside_block?, #skipped_in_metadata?
Methods inherited from Base
inherited, #on_new_investigation
Methods included from RSpec::Language
#example?, #example_group?, #example_group_with_body?, #explicit_rspec?, #hook?, #include?, #let?, #rspec?, #shared_group?, #spec_group?, #subject?
Instance Method Details
#on_send(node) ⇒ Object
61 62 63 64 65 |
# File 'lib/rubocop/cop/rspec/pending.rb', line 61 def on_send(node) return unless pending_block?(node) || skipped?(node) add_offense(node) end |
#pending_block?(node) ⇒ Object
54 55 56 57 58 59 |
# File 'lib/rubocop/cop/rspec/pending.rb', line 54 def_node_matcher :pending_block?, <<~PATTERN { (send #rspec? #ExampleGroups.skipped ...) (send nil? {#Examples.skipped #Examples.pending} ...) } PATTERN |
#skippable?(node) ⇒ Object
41 42 43 44 45 46 |
# File 'lib/rubocop/cop/rspec/pending.rb', line 41 def_node_matcher :skippable?, <<~PATTERN { (send #rspec? #ExampleGroups.regular ...) #skippable_example? } PATTERN |
#skippable_example?(node) ⇒ Object
49 50 51 |
# File 'lib/rubocop/cop/rspec/pending.rb', line 49 def_node_matcher :skippable_example?, <<~PATTERN (send nil? #Examples.regular ...) PATTERN |