This repository has been archived by the owner on Apr 17, 2020. It is now read-only.
-
Notifications
You must be signed in to change notification settings - Fork 10
Home
simplabs edited this page Aug 13, 2010
·
28 revisions
Excellent detects commonly regarded bad code snippets like empty rescue
blocks etc. It combines roodi (http://github.com/martinjandrews/roodi), most checks of reek ("http://github.com/kevinrutherford/reek “:http://github.com/kevinrutherford/reek), flog (”http://github.com/seattlerb/flog ":http://github.com/seattlerb/flog) and also adds some Rails specific checks.
Contributions are very welcome!
Excellent has the following checks:
- AbcMetricMethodCheck – reports methods with an ABC metric score that is higher than the threshold.
- AssignmentInConditionalCheck – reports conditionals that test an assignment.
-
CaseMissingElseCheck – reports
case
statements that don’t have anelse
clause. - ClassLineCountCheck – reports classes which have more lines than the threshold.
- ClassNameCheck – reports classes with bad names.
- ControlCouplingCheck – reports methods that check the value of a parameter to decide which execution path to take.
- CyclomaticComplexityBlockCheck – reports blocks with a cyclomatic complexity metric score that is higher than the threshold.
- CyclomaticComplexityMethodCheck – reports methods with a cyclomatic complexity metric score that is higher than the threshold.
- DuplicationCheck – reports duplicated code.
-
EmptyRescueBodyCheck – reports empty
rescue
blocks. - FlogBlockCheck – reports blocks with a Flog metric score that is higher than the threshold.
- FlogClassCheck – reports classes with a Flog metric score that is higher than the threshold.
- FlogMethodCheck – reports methods with a Flog metric score that is higher than the threshold.
- ForLoopCheck – reports code that uses for loops.
- MethodLineCountCheck – reports methods which have more lines than the threshold.
- MethodNameCheck – reports methods with bad names.
- ModuleLineCountCheck – reports modules which have more lines than the threshold.
- ModuleNameCheck – reports modules with bad names.
- NestedIteratorsCheck – reports nested iterators.
- ParameterNumberCheck – reports method and blocks that have more parameters than the threshold.
- SingletonVariableCheck – reports class variables.
Excellent also has some checks specific to Ruby on Rails:
-
AttrAccessibleCheck – reports
ActiveRecord
models that do not specifyattr_accessible
. -
AttrProtectedCheck – reports
ActiveRecord
models that specifyattr_protected
.