Remove developer documentation about not describing symbols
This is now covered by rubocop-rspec.
This commit is contained in:
parent
651bf36cc5
commit
b92709eaf4
|
@ -3,35 +3,6 @@
|
|||
The purpose of this guide is to document potential "gotchas" that contributors
|
||||
might encounter or should avoid during development of GitLab CE and EE.
|
||||
|
||||
## Do not `describe` symbols
|
||||
|
||||
Consider the following model spec:
|
||||
|
||||
```ruby
|
||||
require 'rails_helper'
|
||||
|
||||
describe User do
|
||||
describe :to_param do
|
||||
it 'converts the username to a param' do
|
||||
user = described_class.new(username: 'John Smith')
|
||||
|
||||
expect(user.to_param).to eq 'john-smith'
|
||||
end
|
||||
end
|
||||
end
|
||||
```
|
||||
|
||||
When run, this spec doesn't do what we might expect:
|
||||
|
||||
```sh
|
||||
spec/models/user_spec.rb|6 error| Failure/Error: u = described_class.new NoMethodError: undefined method `new' for :to_param:Symbol
|
||||
```
|
||||
|
||||
### Solution
|
||||
|
||||
Except for the top-level `describe` block, always provide a String argument to
|
||||
`describe`.
|
||||
|
||||
## Do not assert against the absolute value of a sequence-generated attribute
|
||||
|
||||
Consider the following factory:
|
||||
|
|
|
@ -195,7 +195,6 @@ Please consult the [dedicated "Frontend testing" guide](./fe_guide/testing.md).
|
|||
- Use `context` to test branching logic.
|
||||
- Use multi-line `do...end` blocks for `before` and `after`, even when it would
|
||||
fit on a single line.
|
||||
- Don't `describe` symbols (see [Gotchas](gotchas.md#dont-describe-symbols)).
|
||||
- Don't assert against the absolute value of a sequence-generated attribute (see [Gotchas](gotchas.md#dont-assert-against-the-absolute-value-of-a-sequence-generated-attribute)).
|
||||
- Don't supply the `:each` argument to hooks since it's the default.
|
||||
- Prefer `not_to` to `to_not` (_this is enforced by RuboCop_).
|
||||
|
|
Loading…
Reference in New Issue