class RuboCop::Cop::RSpec::EmptyExample
Constants
- MSG
Checks if an example does not include any expectations.
@example usage
# bad describe Bacon do let(:bacon) { Bacon.new(chunkiness) } let(:chunkiness) { true } it 'is chunky' do bacon.chunky? end end # good describe Bacon do let(:bacon) { Bacon.new(chunkiness) } let(:chunkiness) { true } it 'is chunky' do expect(bacon.chunky?).to be_truthy end end
Public Instance Methods
on_block(node)
click to toggle source
# File lib/rubocop/cop/rspec/empty_example_cops.rb, line 49 def on_block(node) return unless it_description?(node) unless example_present?(node) add_offense(node, message: MSG) end end
Private Instance Methods
example_present?(node)
click to toggle source
# File lib/rubocop/cop/rspec/empty_example_cops.rb, line 59 def example_present?(node) if expect?(node) || should?(node) || assert?(node) true elsif node.nil? false elsif RuboCop::AST::Node === node && node.children.size > 0 node.children.any? { |child| example_present?(child) } else # something not expectation false end end