Class: DatarocketsStyle::Cop::RSpec::PreferBeforeOverSetup
- Inherits:
-
RuboCop::Cop::Cop
- Object
- RuboCop::Cop::Cop
- DatarocketsStyle::Cop::RSpec::PreferBeforeOverSetup
- Defined in:
- lib/datarockets_style/cop/rspec/prefer_before_over_setup.rb
Overview
Checks that tests use ‘before` instead of RoR unit-test `setup` method (part of `rspec-rails` gem)
bad
setup do
allow(post).to receive(:publish!)
end
good
before do
allow(post).to receive(:publish!)
end
Constant Summary collapse
- MSG =
"Use `before` instead of `setup`."
Instance Method Summary collapse
Instance Method Details
#autocorrect(node) ⇒ Object
34 35 36 37 38 39 |
# File 'lib/datarockets_style/cop/rspec/prefer_before_over_setup.rb', line 34 def autocorrect(node) lambda do |corrector| block_internals = node.source.split(/ /) corrector.replace node.loc.expression, ["before", *block_internals[1..]].join(" ") end end |
#on_block(node) ⇒ Object
28 29 30 31 32 |
# File 'lib/datarockets_style/cop/rspec/prefer_before_over_setup.rb', line 28 def on_block(node) return unless setup_call?(node) add_offense(node) end |