Class: RuboCop::Cop::RSpec::Pending
- Inherits:
-
Base
- Object
- Base
- Base
- RuboCop::Cop::RSpec::Pending
show all
- 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
Methods inherited from Base
inherited, #on_new_investigation
#block_pattern, #send_pattern
#example?, #example_group?, #example_group_with_body?, #hook?, #include?, #let?, #rspec?, #shared_group?, #spec_group?, #subject?
Instance Method Details
#on_send(node) ⇒ Object
64
65
66
67
68
|
# File 'lib/rubocop/cop/rspec/pending.rb', line 64
def on_send(node)
return unless pending_block?(node) || skipped?(node)
add_offense(node)
end
|
#pending_block?(node) ⇒ Object
55
56
57
58
59
60
61
62
|
# File 'lib/rubocop/cop/rspec/pending.rb', line 55
def_node_matcher :pending_block?,
send_pattern("{\n #ExampleGroups.skipped\n #Examples.skipped\n #Examples.pending\n}\n")
|
#skip_or_pending?(node) ⇒ Object
52
|
# File 'lib/rubocop/cop/rspec/pending.rb', line 52
def_node_matcher :skip_or_pending?, '{(sym :skip) (sym :pending)}'
|
#skippable?(node) ⇒ Object
38
39
40
41
|
# File 'lib/rubocop/cop/rspec/pending.rb', line 38
def_node_matcher :skippable?,
send_pattern("{#ExampleGroups.regular #Examples.regular}\n")
|
44
45
46
47
48
49
|
# File 'lib/rubocop/cop/rspec/pending.rb', line 44
def_node_matcher :skipped_in_metadata?, " {\n (send _ _ <#skip_or_pending? ...>)\n (send _ _ ... (hash <(pair #skip_or_pending? { true str }) ...>))\n }\n"
|