https://github.com/rubocop/rubocop-factory_bot
Code style checking for factory_bot files.
https://github.com/rubocop/rubocop-factory_bot
factory-bot hacktoberfest lint rubocop ruby static-analysis testing
Last synced: 2 days ago
JSON representation
Code style checking for factory_bot files.
- Host: GitHub
- URL: https://github.com/rubocop/rubocop-factory_bot
- Owner: rubocop
- License: mit
- Created: 2023-03-21T10:40:16.000Z (about 2 years ago)
- Default Branch: master
- Last Pushed: 2025-03-21T17:30:50.000Z (26 days ago)
- Last Synced: 2025-03-31T12:00:55.354Z (16 days ago)
- Topics: factory-bot, hacktoberfest, lint, rubocop, ruby, static-analysis, testing
- Language: Ruby
- Homepage: https://docs.rubocop.org/rubocop-factory_bot
- Size: 1.17 MB
- Stars: 62
- Watchers: 4
- Forks: 18
- Open Issues: 24
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- Contributing: .github/CONTRIBUTING.md
- License: MIT-LICENSE.md
- Code of conduct: CODE_OF_CONDUCT.md
- Codeowners: .github/CODEOWNERS
Awesome Lists containing this project
- awesome-rspec - rubocop-factory_bot
README
# RuboCop factory_bot
[](https://gitter.im/rubocop-rspec/Lobby)
[](https://rubygems.org/gems/rubocop-factory_bot)
[factory_bot](https://github.com/thoughtbot/factory_bot/blob/main/GETTING_STARTED.md)-specific analysis for your projects, as an extension to
[RuboCop](https://github.com/rubocop/rubocop).## Installation
Just install the `rubocop-factory_bot` gem
```bash
gem install rubocop-factory_bot
```or if you use bundler put this in your `Gemfile`
```ruby
gem 'rubocop-factory_bot', require: false
```## Usage
You need to tell RuboCop to load the factory_bot extension. There are three
ways to do this:### RuboCop configuration file
Put this into your `.rubocop.yml`.
```yaml
plugins: rubocop-factory_bot
```Alternatively, use the following array notation when specifying multiple extensions.
```yaml
plugins:
- rubocop-other-extension
- rubocop-factory_bot
```Now you can run `rubocop` and it will automatically load the RuboCop factory_bot
cops together with the standard cops.> [!NOTE]
> The plugin system is supported in RuboCop 1.72+. In earlier versions, use `require` instead of `plugins`.### Command line
```bash
rubocop --plugin rubocop-factory_bot
```### Rake task
```ruby
RuboCop::RakeTask.new do |task|
task.plugins << 'rubocop-factory_bot'
end
```## Documentation
You can read more about RuboCop factory_bot in its [official manual](https://docs.rubocop.org/rubocop-factory_bot).
## The Cops
All cops are located under
[`lib/rubocop/cop/factory_bot`](lib/rubocop/cop/factory_bot), and contain
examples/documentation.In your `.rubocop.yml`, you may treat the factory_bot cops just like any other
cop. For example:```yaml
FactoryBot/AttributeDefinedStatically:
Exclude:
- spec/factories/my_factory.rb
```## Contributing
Checkout the [contribution guidelines](.github/CONTRIBUTING.md).
## License
`rubocop-factory_bot` is MIT licensed. [See the accompanying file](MIT-LICENSE.md) for
the full text.