README.md in rubocop-rspec-1.25.1 vs README.md in rubocop-rspec-1.26.0
- old
+ new
@@ -1,17 +1,16 @@
# RuboCop RSpec
[![Join the chat at https://gitter.im/rubocop-rspec/Lobby](https://badges.gitter.im/rubocop-rspec/Lobby.svg)](https://gitter.im/rubocop-rspec/Lobby)
[![Gem Version](https://badge.fury.io/rb/rubocop-rspec.svg)](https://rubygems.org/gems/rubocop-rspec)
-[![CircleCI](https://circleci.com/gh/rubocop-rspec/rubocop-rspec.svg?style=svg)](https://circleci.com/gh/rubocop-rspec/rubocop-rspec)
-[![Test Coverage](https://api.codeclimate.com/v1/badges/f6254deb61671e357f30/test_coverage)](https://codeclimate.com/github/rubocop-rspec/rubocop-rspec/test_coverage)
-[![Maintainability](https://api.codeclimate.com/v1/badges/f6254deb61671e357f30/maintainability)](https://codeclimate.com/github/rubocop-rspec/rubocop-rspec/maintainability)
+[![CircleCI](https://circleci.com/gh/rubocop-hq/rubocop-rspec.svg?style=svg)](https://circleci.com/gh/rubocop-hq/rubocop-rspec)
+[![Test Coverage](https://api.codeclimate.com/v1/badges/8ffaabf633c968c22bdd/test_coverage)](https://codeclimate.com/github/rubocop-hq/rubocop-rspec/test_coverage)
+[![Maintainability](https://api.codeclimate.com/v1/badges/8ffaabf633c968c22bdd/maintainability)](https://codeclimate.com/github/rubocop-hq/rubocop-rspec/maintainability)
RSpec-specific analysis for your projects, as an extension to
[RuboCop](https://github.com/bbatsov/rubocop).
-
## Installation
Just install the `rubocop-rspec` gem
```bash
@@ -22,11 +21,10 @@
```
gem 'rubocop-rspec'
```
-
## Usage
You need to tell RuboCop to load the RSpec extension. There are three
ways to do this:
@@ -96,13 +94,52 @@
RSpec/FilePath:
Exclude:
- spec/my_poorly_named_spec_file.rb
```
+## Non-goals of RuboCop RSpec
+### Enforcing `should` vs. `expect` syntax
+
+Enforcing
+
+```ruby
+expect(calculator.compute(line_item)).to eq(5)
+```
+
+over
+
+```ruby
+calculator.compute(line_item).should == 5
+```
+
+is a feature of RSpec itself – you can read about it in the [RSpec Documentation](https://relishapp.com/rspec/rspec-expectations/docs/syntax-configuration#disable-should-syntax)
+
+### Enforcing an explicit RSpec receiver for top-level methods (disabling monkey patching)
+
+Enforcing
+
+```ruby
+Rspec.describe MyClass do
+ ...
+end
+```
+
+over
+
+```ruby
+describe MyClass do
+ ...
+end
+```
+
+can be achieved using RSpec's `disable_monkey_patching!` method, which you can read more about in the [RSpec Documentation](https://relishapp.com/rspec/rspec-core/v/3-7/docs/configuration/zero-monkey-patching-mode#monkey-patched-methods-are-undefined-with-%60disable-monkey-patching!%60). This will also prevent `should` from being defined on every object in your system.
+
+Before disabling `should` you will need all your specs to use the `expect` syntax. You can use [Transpec](http://yujinakayama.me/transpec/), which will do the conversion for you.
+
## Contributing
-Checkout the [contribution guidelines](.github/CONTRIBUTING.md)
+Checkout the [contribution guidelines](.github/CONTRIBUTING.md).
## License
`rubocop-rspec` is MIT licensed. [See the accompanying file](MIT-LICENSE.md) for
the full text.