class RuboCop::Cop::RSpec::BeforeAfterAll

Check that before/after(:all) isn't being used.

@example

# bad
#
# Faster but risk of state leaking between examples
#
describe MyClass do
  before(:all) { Widget.create }
  after(:all) { Widget.delete_all }
end

# good
#
# Slower but examples are properly isolated
#
describe MyClass do
  before(:each) { Widget.create }
  after(:each) { Widget.delete_all }
end

Constants

MSG

Public Instance Methods

on_send(node) click to toggle source
# File lib/rubocop/cop/rspec/before_after_all.rb, line 36
def on_send(node)
  before_or_after_all(node) do |hook|
    add_offense(
      node,
      location: :expression,
      message: format(MSG, hook: hook.source)
    )
  end
end