TopMembersQuery has no descriptive comment Open
class TopMembersQuery
- Read upRead up
- Exclude checks
Classes and modules are the units of reuse and release. It is therefore considered good practice to annotate every class and module with a brief comment outlining its responsibilities.
Example
Given
class Dummy
# Do things...
end
Reek would emit the following warning:
test.rb -- 1 warning:
[1]:Dummy has no descriptive comment (IrresponsibleModule)
Fixing this is simple - just an explaining comment:
# The Dummy class is responsible for ...
class Dummy
# Do things...
end
Missing top-level class documentation comment. Open
class TopMembersQuery
- Read upRead up
- Exclude checks
This cop checks for missing top-level documentation of classes and modules. Classes with no body are exempt from the check and so are namespace modules - modules that have nothing in their bodies except classes, other modules, or constant definitions.
The documentation requirement is annulled if the class or module has a "#:nodoc:" comment next to it. Likewise, "#:nodoc: all" does the same for all its children.
Example:
# bad
class Person
# ...
end
# good
# Description/Explanation of Person class
class Person
# ...
end
Place the . on the next line, together with the method name. Open
@group.members_with_role.
- Read upRead up
- Exclude checks
This cop checks the . position in multi-line method calls.
Example: EnforcedStyle: leading (default)
# bad
something.
mehod
# good
something
.method
Example: EnforcedStyle: trailing
# bad
something
.method
# good
something.
mehod
Use 2 (not 1) spaces for indenting an expression spanning multiple lines. Open
order("user_group_points.amount DESC").
- Read upRead up
- Exclude checks
This cop checks the indentation of the method name part in method calls that span more than one line.
Example: EnforcedStyle: aligned
# bad
while myvariable
.b
# do something
end
# good
while myvariable
.b
# do something
end
# good
Thing.a
.b
.c
Example: EnforcedStyle: indented
# good
while myvariable
.b
# do something
end
Example: EnforcedStyle: indentedrelativeto_receiver
# good
while myvariable
.a
.b
# do something
end
# good
myvariable = Thing
.a
.b
.c
Use 2 (not 1) spaces for indenting an expression spanning multiple lines. Open
where("user_group_points.group_id = ?", @group).
- Read upRead up
- Exclude checks
This cop checks the indentation of the method name part in method calls that span more than one line.
Example: EnforcedStyle: aligned
# bad
while myvariable
.b
# do something
end
# good
while myvariable
.b
# do something
end
# good
Thing.a
.b
.c
Example: EnforcedStyle: indented
# good
while myvariable
.b
# do something
end
Example: EnforcedStyle: indentedrelativeto_receiver
# good
while myvariable
.a
.b
# do something
end
# good
myvariable = Thing
.a
.b
.c
Place the . on the next line, together with the method name. Open
joins(:user_group_points).
- Read upRead up
- Exclude checks
This cop checks the . position in multi-line method calls.
Example: EnforcedStyle: leading (default)
# bad
something.
mehod
# good
something
.method
Example: EnforcedStyle: trailing
# bad
something
.method
# good
something.
mehod
Place the . on the next line, together with the method name. Open
order("user_group_points.amount DESC").
- Read upRead up
- Exclude checks
This cop checks the . position in multi-line method calls.
Example: EnforcedStyle: leading (default)
# bad
something.
mehod
# good
something
.method
Example: EnforcedStyle: trailing
# bad
something
.method
# good
something.
mehod
Prefer single-quoted strings when you don't need string interpolation or special symbols. Open
order("user_group_points.amount DESC").
- Read upRead up
- Exclude checks
Checks if uses of quotes match the configured preference.
Example: EnforcedStyle: single_quotes (default)
# bad
"No special symbols"
"No string interpolation"
"Just text"
# good
'No special symbols'
'No string interpolation'
'Just text'
"Wait! What's #{this}!"
Example: EnforcedStyle: double_quotes
# bad
'Just some text'
'No special chars or interpolation'
# good
"Just some text"
"No special chars or interpolation"
"Every string in #{project} uses double_quotes"
Use 2 (not 1) spaces for indenting an expression spanning multiple lines. Open
joins(:user_group_points).
- Read upRead up
- Exclude checks
This cop checks the indentation of the method name part in method calls that span more than one line.
Example: EnforcedStyle: aligned
# bad
while myvariable
.b
# do something
end
# good
while myvariable
.b
# do something
end
# good
Thing.a
.b
.c
Example: EnforcedStyle: indented
# good
while myvariable
.b
# do something
end
Example: EnforcedStyle: indentedrelativeto_receiver
# good
while myvariable
.a
.b
# do something
end
# good
myvariable = Thing
.a
.b
.c
Prefer single-quoted strings when you don't need string interpolation or special symbols. Open
where("user_group_points.group_id = ?", @group).
- Read upRead up
- Exclude checks
Checks if uses of quotes match the configured preference.
Example: EnforcedStyle: single_quotes (default)
# bad
"No special symbols"
"No string interpolation"
"Just text"
# good
'No special symbols'
'No string interpolation'
'Just text'
"Wait! What's #{this}!"
Example: EnforcedStyle: double_quotes
# bad
'Just some text'
'No special chars or interpolation'
# good
"Just some text"
"No special chars or interpolation"
"Every string in #{project} uses double_quotes"
Place the . on the next line, together with the method name. Open
where("user_group_points.group_id = ?", @group).
- Read upRead up
- Exclude checks
This cop checks the . position in multi-line method calls.
Example: EnforcedStyle: leading (default)
# bad
something.
mehod
# good
something
.method
Example: EnforcedStyle: trailing
# bad
something
.method
# good
something.
mehod
Use 2 (not 1) spaces for indenting an expression spanning multiple lines. Open
limit(@limit)
- Read upRead up
- Exclude checks
This cop checks the indentation of the method name part in method calls that span more than one line.
Example: EnforcedStyle: aligned
# bad
while myvariable
.b
# do something
end
# good
while myvariable
.b
# do something
end
# good
Thing.a
.b
.c
Example: EnforcedStyle: indented
# good
while myvariable
.b
# do something
end
Example: EnforcedStyle: indentedrelativeto_receiver
# good
while myvariable
.a
.b
# do something
end
# good
myvariable = Thing
.a
.b
.c