rubocop / rubocop-rspec

Code style checking for RSpec files.
https://docs.rubocop.org/rubocop-rspec
MIT License
810 stars 276 forks source link
lint rspec rubocop ruby static-analysis testing

RuboCop RSpec

Join the chat at https://gitter.im/rubocop-rspec/Lobby Gem Version CI

RSpec-specific analysis for your projects, as an extension to RuboCop.

Installation

Just install the rubocop-rspec gem

gem install rubocop-rspec

or if you use bundler put this in your Gemfile

gem 'rubocop-rspec', require: false

Upgrading to RuboCop RSpec v3.x

Read all the details in our Upgrade to Version 3.x document.

Upgrading to RuboCop RSpec v2.x

Read all the details in our Upgrade to Version 2.x document.

Usage

You need to tell RuboCop to load the RSpec extension. There are three ways to do this:

RuboCop configuration file

Put this into your .rubocop.yml.

require: rubocop-rspec

Alternatively, use the following array notation when specifying multiple extensions.

require:
  - rubocop-other-extension
  - rubocop-rspec

Now you can run rubocop and it will automatically load the RuboCop RSpec cops together with the standard cops.

Command line

rubocop --require rubocop-rspec

Rake task

RuboCop::RakeTask.new do |task|
  task.requires << 'rubocop-rspec'
end

Code Climate

rubocop-rspec is available on Code Climate as part of the rubocop engine. Learn More.

Documentation

You can read more about RuboCop RSpec in its official manual.

The Cops

All cops are located under lib/rubocop/cop/rspec, and contain examples/documentation.

In your .rubocop.yml, you may treat the RSpec cops just like any other cop. For example:

RSpec/SpecFilePathFormat:
  Exclude:
    - spec/my_poorly_named_spec_file.rb

Contributing

Checkout the contribution guidelines.

License

rubocop-rspec is MIT licensed. See the accompanying file for the full text.