class RuboCop::Cop::Betterment::SpecHelperRequiredOutsideSpecDir

If a file requires spec_helper or rails_helper, make sure it is located in a spec/ directory.

@example

# bad
app/models/whatever_spec.rb
require 'rails_helper'

# good
spec/models/my_class_spec.rb
require 'rails_helper'

Constants

MSG

Public Instance Methods

on_send(node) click to toggle source
# File lib/rubocop/cop/betterment/spec_helper_required_outside_spec_dir.rb, line 23
def on_send(node)
  add_offense(node) if requires_spec_helper?(node) && !spec_directory?
end

Private Instance Methods

spec_directory?() click to toggle source
# File lib/rubocop/cop/betterment/spec_helper_required_outside_spec_dir.rb, line 29
def spec_directory?
  Pathname.new(processed_source.buffer.name)
    .relative_path_from(Pathname.pwd)
    .to_s
    .start_with?("spec#{File::SEPARATOR}")
end