rubocop 0.18.1 → 0.19.0

Sign up to get free protection for your applications and to get access to all the features.

Potentially problematic release.


This version of rubocop might be problematic. Click here for more details.

Files changed (398) hide show
  1. checksums.yaml +4 -4
  2. data/.travis.yml +1 -1
  3. data/CHANGELOG.md +65 -1
  4. data/Gemfile +0 -3
  5. data/LICENSE.txt +1 -1
  6. data/README.md +179 -77
  7. data/Rakefile +8 -0
  8. data/config/default.yml +151 -14
  9. data/config/enabled.yml +65 -8
  10. data/lib/rubocop.rb +19 -4
  11. data/lib/rubocop/cli.rb +2 -1
  12. data/lib/rubocop/comment_config.rb +97 -0
  13. data/lib/rubocop/config.rb +1 -1
  14. data/lib/rubocop/config_loader.rb +3 -2
  15. data/lib/rubocop/config_store.rb +6 -2
  16. data/lib/rubocop/cop/commissioner.rb +2 -2
  17. data/lib/rubocop/cop/cop.rb +22 -26
  18. data/lib/rubocop/cop/lint/ambiguous_operator.rb +2 -2
  19. data/lib/rubocop/cop/lint/ambiguous_regexp_literal.rb +1 -1
  20. data/lib/rubocop/cop/lint/assignment_in_condition.rb +1 -1
  21. data/lib/rubocop/cop/lint/block_alignment.rb +6 -6
  22. data/lib/rubocop/cop/lint/condition_position.rb +1 -1
  23. data/lib/rubocop/cop/lint/debugger.rb +1 -1
  24. data/lib/rubocop/cop/lint/deprecated_class_methods.rb +60 -0
  25. data/lib/rubocop/cop/lint/else_layout.rb +1 -1
  26. data/lib/rubocop/cop/lint/empty_ensure.rb +1 -1
  27. data/lib/rubocop/cop/lint/end_alignment.rb +14 -12
  28. data/lib/rubocop/cop/lint/end_in_method.rb +1 -1
  29. data/lib/rubocop/cop/lint/ensure_return.rb +1 -1
  30. data/lib/rubocop/cop/lint/eval.rb +1 -1
  31. data/lib/rubocop/cop/lint/handle_exceptions.rb +1 -1
  32. data/lib/rubocop/cop/lint/literal_in_condition.rb +13 -2
  33. data/lib/rubocop/cop/lint/literal_in_interpolation.rb +28 -0
  34. data/lib/rubocop/cop/lint/loop.rb +4 -4
  35. data/lib/rubocop/cop/lint/parentheses_as_grouped_expression.rb +1 -1
  36. data/lib/rubocop/cop/lint/require_parentheses.rb +6 -6
  37. data/lib/rubocop/cop/lint/rescue_exception.rb +1 -1
  38. data/lib/rubocop/cop/lint/shadowing_outer_local_variable.rb +2 -2
  39. data/lib/rubocop/cop/lint/string_conversion_in_interpolation.rb +30 -0
  40. data/lib/rubocop/cop/lint/syntax.rb +5 -5
  41. data/lib/rubocop/cop/lint/unreachable_code.rb +1 -1
  42. data/lib/rubocop/cop/lint/useless_assignment.rb +5 -5
  43. data/lib/rubocop/cop/lint/useless_comparison.rb +1 -1
  44. data/lib/rubocop/cop/lint/useless_setter_call.rb +1 -1
  45. data/lib/rubocop/cop/lint/void.rb +5 -5
  46. data/lib/rubocop/cop/mixin/autocorrect_alignment.rb +8 -5
  47. data/lib/rubocop/cop/mixin/code_length.rb +2 -2
  48. data/lib/rubocop/cop/mixin/configurable_enforced_style.rb +7 -7
  49. data/lib/rubocop/cop/mixin/configurable_max.rb +1 -1
  50. data/lib/rubocop/cop/mixin/configurable_naming.rb +1 -1
  51. data/lib/rubocop/cop/mixin/if_then_else.rb +1 -1
  52. data/lib/rubocop/cop/mixin/negative_conditional.rb +1 -1
  53. data/lib/rubocop/cop/mixin/parser_diagnostic.rb +2 -2
  54. data/lib/rubocop/cop/mixin/space_after_punctuation.rb +3 -2
  55. data/lib/rubocop/cop/mixin/space_inside.rb +1 -1
  56. data/lib/rubocop/cop/mixin/statement_modifier.rb +1 -0
  57. data/lib/rubocop/cop/mixin/string_help.rb +4 -4
  58. data/lib/rubocop/cop/{offence.rb → offense.rb} +7 -7
  59. data/lib/rubocop/cop/rails/action_filter.rb +73 -0
  60. data/lib/rubocop/cop/rails/default_scope.rb +1 -1
  61. data/lib/rubocop/cop/rails/has_and_belongs_to_many.rb +1 -1
  62. data/lib/rubocop/cop/rails/output.rb +1 -10
  63. data/lib/rubocop/cop/rails/read_attribute.rb +1 -1
  64. data/lib/rubocop/cop/rails/scope_args.rb +33 -0
  65. data/lib/rubocop/cop/rails/validation.rb +1 -1
  66. data/lib/rubocop/cop/style/access_modifier_indentation.rb +1 -1
  67. data/lib/rubocop/cop/style/accessor_method_name.rb +2 -2
  68. data/lib/rubocop/cop/style/alias.rb +2 -2
  69. data/lib/rubocop/cop/style/align_array.rb +1 -1
  70. data/lib/rubocop/cop/style/align_hash.rb +29 -2
  71. data/lib/rubocop/cop/style/align_parameters.rb +16 -2
  72. data/lib/rubocop/cop/style/and_or.rb +2 -2
  73. data/lib/rubocop/cop/style/ascii_comments.rb +1 -1
  74. data/lib/rubocop/cop/style/ascii_identifiers.rb +1 -1
  75. data/lib/rubocop/cop/style/attr.rb +1 -1
  76. data/lib/rubocop/cop/style/begin_block.rb +1 -1
  77. data/lib/rubocop/cop/style/block_comments.rb +1 -1
  78. data/lib/rubocop/cop/style/block_nesting.rb +1 -1
  79. data/lib/rubocop/cop/style/blocks.rb +2 -2
  80. data/lib/rubocop/cop/style/braces_around_hash_parameters.rb +2 -2
  81. data/lib/rubocop/cop/style/case_equality.rb +1 -1
  82. data/lib/rubocop/cop/style/case_indentation.rb +2 -2
  83. data/lib/rubocop/cop/style/character_literal.rb +2 -2
  84. data/lib/rubocop/cop/style/class_and_module_camel_case.rb +1 -1
  85. data/lib/rubocop/cop/style/class_and_module_children.rb +69 -0
  86. data/lib/rubocop/cop/style/class_methods.rb +1 -1
  87. data/lib/rubocop/cop/style/class_vars.rb +3 -3
  88. data/lib/rubocop/cop/style/collection_methods.rb +4 -4
  89. data/lib/rubocop/cop/style/colon_method_call.rb +1 -1
  90. data/lib/rubocop/cop/style/comment_annotation.rb +1 -1
  91. data/lib/rubocop/cop/style/constant_name.rb +1 -1
  92. data/lib/rubocop/cop/style/cyclomatic_complexity.rb +2 -2
  93. data/lib/rubocop/cop/style/def_parentheses.rb +2 -2
  94. data/lib/rubocop/cop/style/documentation.rb +1 -1
  95. data/lib/rubocop/cop/style/dot_position.rb +10 -11
  96. data/lib/rubocop/cop/style/double_negation.rb +40 -0
  97. data/lib/rubocop/cop/style/empty_line_between_defs.rb +8 -1
  98. data/lib/rubocop/cop/style/empty_lines.rb +3 -2
  99. data/lib/rubocop/cop/style/empty_lines_around_access_modifier.rb +1 -1
  100. data/lib/rubocop/cop/style/empty_lines_around_body.rb +1 -1
  101. data/lib/rubocop/cop/style/empty_literal.rb +3 -3
  102. data/lib/rubocop/cop/style/encoding.rb +1 -1
  103. data/lib/rubocop/cop/style/end_block.rb +1 -1
  104. data/lib/rubocop/cop/style/end_of_line.rb +2 -2
  105. data/lib/rubocop/cop/style/even_odd.rb +2 -2
  106. data/lib/rubocop/cop/style/favor_join.rb +1 -1
  107. data/lib/rubocop/cop/style/file_name.rb +29 -0
  108. data/lib/rubocop/cop/style/final_newline.rb +1 -1
  109. data/lib/rubocop/cop/style/flip_flop.rb +2 -2
  110. data/lib/rubocop/cop/style/for.rb +2 -2
  111. data/lib/rubocop/cop/style/format_string.rb +66 -0
  112. data/lib/rubocop/cop/style/global_vars.rb +2 -2
  113. data/lib/rubocop/cop/style/hash_methods.rb +1 -1
  114. data/lib/rubocop/cop/style/hash_syntax.rb +3 -3
  115. data/lib/rubocop/cop/style/if_unless_modifier.rb +2 -1
  116. data/lib/rubocop/cop/style/indent_array.rb +41 -0
  117. data/lib/rubocop/cop/style/indent_hash.rb +119 -0
  118. data/lib/rubocop/cop/style/indentation_consistency.rb +3 -11
  119. data/lib/rubocop/cop/style/indentation_width.rb +44 -23
  120. data/lib/rubocop/cop/style/lambda.rb +2 -2
  121. data/lib/rubocop/cop/style/lambda_call.rb +3 -3
  122. data/lib/rubocop/cop/style/leading_comment_space.rb +1 -1
  123. data/lib/rubocop/cop/style/line_end_concatenation.rb +7 -3
  124. data/lib/rubocop/cop/style/line_length.rb +2 -2
  125. data/lib/rubocop/cop/style/method_call_parentheses.rb +2 -2
  126. data/lib/rubocop/cop/style/method_called_on_do_end_block.rb +2 -2
  127. data/lib/rubocop/cop/style/method_def_parentheses.rb +9 -7
  128. data/lib/rubocop/cop/style/module_function.rb +1 -1
  129. data/lib/rubocop/cop/style/multiline_block_chain.rb +1 -1
  130. data/lib/rubocop/cop/style/multiline_ternary_operator.rb +1 -1
  131. data/lib/rubocop/cop/style/nested_ternary_operator.rb +2 -2
  132. data/lib/rubocop/cop/style/nil_comparison.rb +1 -1
  133. data/lib/rubocop/cop/style/not.rb +1 -1
  134. data/lib/rubocop/cop/style/numeric_literals.rb +5 -5
  135. data/lib/rubocop/cop/style/op_method.rb +2 -2
  136. data/lib/rubocop/cop/style/parameter_lists.rb +1 -1
  137. data/lib/rubocop/cop/style/parentheses_around_condition.rb +5 -4
  138. data/lib/rubocop/cop/style/percent_literal_delimiters.rb +143 -0
  139. data/lib/rubocop/cop/style/perl_backrefs.rb +1 -1
  140. data/lib/rubocop/cop/style/predicate_name.rb +1 -1
  141. data/lib/rubocop/cop/style/proc.rb +1 -1
  142. data/lib/rubocop/cop/style/raise_args.rb +2 -2
  143. data/lib/rubocop/cop/style/redundant_begin.rb +1 -1
  144. data/lib/rubocop/cop/style/redundant_exception.rb +1 -1
  145. data/lib/rubocop/cop/style/redundant_return.rb +1 -1
  146. data/lib/rubocop/cop/style/redundant_self.rb +2 -2
  147. data/lib/rubocop/cop/style/regexp_literal.rb +45 -19
  148. data/lib/rubocop/cop/style/rescue_modifier.rb +1 -1
  149. data/lib/rubocop/cop/style/self_assignment.rb +73 -0
  150. data/lib/rubocop/cop/style/semicolon.rb +12 -8
  151. data/lib/rubocop/cop/style/signal_exception.rb +2 -2
  152. data/lib/rubocop/cop/style/single_line_block_params.rb +1 -1
  153. data/lib/rubocop/cop/style/single_line_methods.rb +38 -1
  154. data/lib/rubocop/cop/style/space_after_colon.rb +3 -3
  155. data/lib/rubocop/cop/style/space_after_comma.rb +1 -1
  156. data/lib/rubocop/cop/style/space_after_control_keyword.rb +1 -1
  157. data/lib/rubocop/cop/style/space_after_method_name.rb +11 -3
  158. data/lib/rubocop/cop/style/space_after_not.rb +1 -1
  159. data/lib/rubocop/cop/style/space_after_semicolon.rb +1 -1
  160. data/lib/rubocop/cop/style/space_around_equals_in_parameter_default.rb +41 -6
  161. data/lib/rubocop/cop/style/space_around_operators.rb +4 -4
  162. data/lib/rubocop/cop/style/space_before_block_braces.rb +63 -0
  163. data/lib/rubocop/cop/style/space_before_modifier_keyword.rb +1 -1
  164. data/lib/rubocop/cop/style/{space_around_block_braces.rb → space_inside_block_braces.rb} +15 -24
  165. data/lib/rubocop/cop/style/space_inside_hash_literal_braces.rb +14 -7
  166. data/lib/rubocop/cop/style/special_global_vars.rb +1 -1
  167. data/lib/rubocop/cop/style/string_literals.rb +1 -1
  168. data/lib/rubocop/cop/style/symbol_array.rb +1 -1
  169. data/lib/rubocop/cop/style/tab.rb +1 -1
  170. data/lib/rubocop/cop/style/trailing_blank_lines.rb +2 -2
  171. data/lib/rubocop/cop/style/trailing_comma.rb +4 -4
  172. data/lib/rubocop/cop/style/trailing_whitespace.rb +1 -1
  173. data/lib/rubocop/cop/style/trivial_accessors.rb +2 -2
  174. data/lib/rubocop/cop/style/unless_else.rb +1 -1
  175. data/lib/rubocop/cop/style/variable_interpolation.rb +1 -1
  176. data/lib/rubocop/cop/style/when_then.rb +1 -1
  177. data/lib/rubocop/cop/style/while_until_do.rb +1 -1
  178. data/lib/rubocop/cop/style/while_until_modifier.rb +2 -1
  179. data/lib/rubocop/cop/style/word_array.rb +2 -2
  180. data/lib/rubocop/cop/team.rb +24 -7
  181. data/lib/rubocop/cop/util.rb +3 -3
  182. data/lib/rubocop/cop/variable_inspector.rb +25 -13
  183. data/lib/rubocop/cop/variable_inspector/assignment.rb +1 -1
  184. data/lib/rubocop/cop/variable_inspector/reference.rb +1 -1
  185. data/lib/rubocop/cop/variable_inspector/scope.rb +1 -1
  186. data/lib/rubocop/cop/variable_inspector/variable.rb +2 -2
  187. data/lib/rubocop/cop/variable_inspector/variable_table.rb +1 -1
  188. data/lib/rubocop/file_inspector.rb +12 -13
  189. data/lib/rubocop/formatter/base_formatter.rb +4 -4
  190. data/lib/rubocop/formatter/clang_style_formatter.rb +2 -2
  191. data/lib/rubocop/formatter/disabled_config_formatter.rb +12 -12
  192. data/lib/rubocop/formatter/emacs_style_formatter.rb +3 -2
  193. data/lib/rubocop/formatter/file_list_formatter.rb +4 -4
  194. data/lib/rubocop/formatter/formatter_set.rb +2 -1
  195. data/lib/rubocop/formatter/fuubar_style_formatter.rb +76 -0
  196. data/lib/rubocop/formatter/json_formatter.rb +17 -16
  197. data/lib/rubocop/formatter/offense_count_formatter.rb +54 -0
  198. data/lib/rubocop/formatter/progress_formatter.rb +16 -16
  199. data/lib/rubocop/formatter/simple_text_formatter.rb +25 -25
  200. data/lib/rubocop/options.rb +8 -7
  201. data/lib/rubocop/processed_source.rb +3 -2
  202. data/lib/rubocop/source_parser.rb +1 -59
  203. data/lib/rubocop/version.rb +3 -3
  204. data/relnotes/0.19.0.md +70 -0
  205. data/rubocop-todo.yml +6 -6
  206. data/rubocop.gemspec +2 -1
  207. data/spec/rubocop/cli_spec.rb +431 -268
  208. data/spec/rubocop/comment_config_spec.rb +103 -0
  209. data/spec/rubocop/config_loader_spec.rb +4 -4
  210. data/spec/rubocop/cop/commissioner_spec.rb +7 -7
  211. data/spec/rubocop/cop/cop_spec.rb +17 -17
  212. data/spec/rubocop/cop/lint/ambiguous_operator_spec.rb +16 -16
  213. data/spec/rubocop/cop/lint/ambiguous_regexp_literal_spec.rb +5 -5
  214. data/spec/rubocop/cop/lint/assignment_in_condition_spec.rb +19 -19
  215. data/spec/rubocop/cop/lint/block_alignment_spec.rb +52 -52
  216. data/spec/rubocop/cop/lint/condition_position_spec.rb +7 -7
  217. data/spec/rubocop/cop/lint/debugger_spec.rb +10 -10
  218. data/spec/rubocop/cop/lint/deprecated_class_methods_spec.rb +33 -0
  219. data/spec/rubocop/cop/lint/else_layout_spec.rb +7 -7
  220. data/spec/rubocop/cop/lint/empty_ensure_spec.rb +4 -4
  221. data/spec/rubocop/cop/lint/end_alignment_spec.rb +33 -34
  222. data/spec/rubocop/cop/lint/end_in_method_spec.rb +5 -5
  223. data/spec/rubocop/cop/lint/ensure_return_spec.rb +4 -4
  224. data/spec/rubocop/cop/lint/eval_spec.rb +8 -8
  225. data/spec/rubocop/cop/lint/handle_exceptions_spec.rb +4 -4
  226. data/spec/rubocop/cop/lint/invalid_character_literal_spec.rb +3 -3
  227. data/spec/rubocop/cop/lint/literal_in_condition_spec.rb +65 -10
  228. data/spec/rubocop/cop/lint/literal_in_interpolation_spec.rb +21 -0
  229. data/spec/rubocop/cop/lint/loop_spec.rb +6 -6
  230. data/spec/rubocop/cop/lint/parentheses_as_grouped_expression_spec.rb +14 -14
  231. data/spec/rubocop/cop/lint/require_parentheses_spec.rb +15 -15
  232. data/spec/rubocop/cop/lint/rescue_exception_spec.rb +21 -21
  233. data/spec/rubocop/cop/lint/shadowing_outer_local_variable_spec.rb +16 -16
  234. data/spec/rubocop/cop/lint/string_conversion_in_interpolation_spec.rb +27 -0
  235. data/spec/rubocop/cop/lint/syntax_spec.rb +11 -11
  236. data/spec/rubocop/cop/lint/unreachable_code_spec.rb +8 -8
  237. data/spec/rubocop/cop/lint/useless_assignment_spec.rb +207 -169
  238. data/spec/rubocop/cop/lint/useless_comparison_spec.rb +5 -5
  239. data/spec/rubocop/cop/lint/useless_else_without_rescue_spec.rb +4 -4
  240. data/spec/rubocop/cop/lint/useless_setter_call_spec.rb +17 -17
  241. data/spec/rubocop/cop/lint/void_spec.rb +8 -8
  242. data/spec/rubocop/cop/{offence_spec.rb → offense_spec.rb} +17 -17
  243. data/spec/rubocop/cop/rails/action_filter_spec.rb +69 -0
  244. data/spec/rubocop/cop/rails/default_scope_spec.rb +9 -9
  245. data/spec/rubocop/cop/rails/has_and_belongs_to_many_spec.rb +2 -2
  246. data/spec/rubocop/cop/rails/output_spec.rb +8 -18
  247. data/spec/rubocop/cop/rails/read_attribute_spec.rb +2 -2
  248. data/spec/rubocop/cop/rails/scope_args_spec.rb +25 -0
  249. data/spec/rubocop/cop/rails/validation_spec.rb +3 -3
  250. data/spec/rubocop/cop/style/access_modifier_indentation_spec.rb +38 -38
  251. data/spec/rubocop/cop/style/accessor_method_name_spec.rb +14 -14
  252. data/spec/rubocop/cop/style/alias_spec.rb +11 -11
  253. data/spec/rubocop/cop/style/align_array_spec.rb +23 -7
  254. data/spec/rubocop/cop/style/align_hash_spec.rb +111 -30
  255. data/spec/rubocop/cop/style/align_parameters_spec.rb +260 -187
  256. data/spec/rubocop/cop/style/and_or_spec.rb +6 -6
  257. data/spec/rubocop/cop/style/ascii_comments_spec.rb +3 -3
  258. data/spec/rubocop/cop/style/ascii_identifiers_spec.rb +5 -5
  259. data/spec/rubocop/cop/style/attr_spec.rb +2 -2
  260. data/spec/rubocop/cop/style/begin_block_spec.rb +2 -2
  261. data/spec/rubocop/cop/style/block_comments_spec.rb +3 -3
  262. data/spec/rubocop/cop/style/block_nesting_spec.rb +26 -26
  263. data/spec/rubocop/cop/style/blocks_spec.rb +8 -8
  264. data/spec/rubocop/cop/style/braces_around_hash_parameters_spec.rb +8 -8
  265. data/spec/rubocop/cop/style/case_equality_spec.rb +2 -2
  266. data/spec/rubocop/cop/style/case_indentation_spec.rb +21 -21
  267. data/spec/rubocop/cop/style/character_literal_spec.rb +6 -6
  268. data/spec/rubocop/cop/style/class_and_module_camel_case_spec.rb +4 -4
  269. data/spec/rubocop/cop/style/class_and_module_children_spec.rb +129 -0
  270. data/spec/rubocop/cop/style/class_length_spec.rb +9 -9
  271. data/spec/rubocop/cop/style/class_methods_spec.rb +8 -8
  272. data/spec/rubocop/cop/style/class_vars_spec.rb +4 -4
  273. data/spec/rubocop/cop/style/collection_methods_spec.rb +6 -6
  274. data/spec/rubocop/cop/style/colon_method_call_spec.rb +16 -16
  275. data/spec/rubocop/cop/style/comment_annotation_spec.rb +16 -16
  276. data/spec/rubocop/cop/style/constant_name_spec.rb +12 -12
  277. data/spec/rubocop/cop/style/cyclomatic_complexity_spec.rb +16 -16
  278. data/spec/rubocop/cop/style/def_with_parentheses_spec.rb +6 -6
  279. data/spec/rubocop/cop/style/documentation_spec.rb +14 -14
  280. data/spec/rubocop/cop/style/dot_position_spec.rb +23 -26
  281. data/spec/rubocop/cop/style/double_negation_spec.rb +22 -0
  282. data/spec/rubocop/cop/style/empty_line_between_defs_spec.rb +22 -14
  283. data/spec/rubocop/cop/style/empty_lines_around_access_modifier_spec.rb +4 -4
  284. data/spec/rubocop/cop/style/empty_lines_around_body_spec.rb +20 -20
  285. data/spec/rubocop/cop/style/empty_lines_spec.rb +17 -6
  286. data/spec/rubocop/cop/style/empty_literal_spec.rb +20 -20
  287. data/spec/rubocop/cop/style/encoding_spec.rb +5 -5
  288. data/spec/rubocop/cop/style/end_block_spec.rb +2 -2
  289. data/spec/rubocop/cop/style/end_of_line_spec.rb +4 -4
  290. data/spec/rubocop/cop/style/even_odd_spec.rb +18 -18
  291. data/spec/rubocop/cop/style/favor_join_spec.rb +7 -7
  292. data/spec/rubocop/cop/style/favor_unless_over_negated_if_spec.rb +7 -7
  293. data/spec/rubocop/cop/style/favor_until_over_negated_while_spec.rb +3 -3
  294. data/spec/rubocop/cop/style/file_name_spec.rb +71 -0
  295. data/spec/rubocop/cop/style/final_newline_spec.rb +4 -4
  296. data/spec/rubocop/cop/style/flip_flop_spec.rb +4 -4
  297. data/spec/rubocop/cop/style/for_spec.rb +13 -13
  298. data/spec/rubocop/cop/style/format_string_spec.rb +136 -0
  299. data/spec/rubocop/cop/style/global_vars_spec.rb +7 -7
  300. data/spec/rubocop/cop/style/hash_methods_spec.rb +6 -6
  301. data/spec/rubocop/cop/style/hash_syntax_spec.rb +11 -11
  302. data/spec/rubocop/cop/style/if_unless_modifier_spec.rb +29 -11
  303. data/spec/rubocop/cop/style/if_with_semicolon_spec.rb +1 -1
  304. data/spec/rubocop/cop/style/indent_array_spec.rb +136 -0
  305. data/spec/rubocop/cop/style/indent_hash_spec.rb +238 -0
  306. data/spec/rubocop/cop/style/indentation_consistency_spec.rb +69 -49
  307. data/spec/rubocop/cop/style/indentation_width_spec.rb +264 -128
  308. data/spec/rubocop/cop/style/lambda_call_spec.rb +14 -14
  309. data/spec/rubocop/cop/style/lambda_spec.rb +7 -7
  310. data/spec/rubocop/cop/style/leading_comment_space_spec.rb +15 -15
  311. data/spec/rubocop/cop/style/line_end_concatenation_spec.rb +11 -4
  312. data/spec/rubocop/cop/style/line_length_spec.rb +5 -5
  313. data/spec/rubocop/cop/style/method_call_parentheses_spec.rb +5 -5
  314. data/spec/rubocop/cop/style/method_called_on_do_end_block_spec.rb +9 -9
  315. data/spec/rubocop/cop/style/method_def_parentheses_spec.rb +19 -19
  316. data/spec/rubocop/cop/style/method_length_spec.rb +17 -17
  317. data/spec/rubocop/cop/style/method_name_spec.rb +21 -21
  318. data/spec/rubocop/cop/style/module_function_spec.rb +3 -3
  319. data/spec/rubocop/cop/style/multiline_block_chain_spec.rb +13 -13
  320. data/spec/rubocop/cop/style/multiline_if_then_spec.rb +10 -10
  321. data/spec/rubocop/cop/style/multiline_ternary_operator_spec.rb +3 -3
  322. data/spec/rubocop/cop/style/nested_ternary_operator_spec.rb +3 -3
  323. data/spec/rubocop/cop/style/nil_comparison_spec.rb +7 -7
  324. data/spec/rubocop/cop/style/not_spec.rb +6 -11
  325. data/spec/rubocop/cop/style/numeric_literals_spec.rb +8 -8
  326. data/spec/rubocop/cop/style/one_line_conditional_spec.rb +1 -1
  327. data/spec/rubocop/cop/style/op_method_spec.rb +13 -13
  328. data/spec/rubocop/cop/style/parameter_lists_spec.rb +6 -6
  329. data/spec/rubocop/cop/style/parentheses_around_condition_spec.rb +11 -10
  330. data/spec/rubocop/cop/style/percent_literal_delimiters_spec.rb +250 -0
  331. data/spec/rubocop/cop/style/perl_backrefs_spec.rb +2 -2
  332. data/spec/rubocop/cop/style/predicate_name_spec.rb +3 -3
  333. data/spec/rubocop/cop/style/proc_spec.rb +4 -4
  334. data/spec/rubocop/cop/style/raise_args_spec.rb +20 -20
  335. data/spec/rubocop/cop/style/redundant_begin_spec.rb +6 -6
  336. data/spec/rubocop/cop/style/redundant_exception_spec.rb +6 -6
  337. data/spec/rubocop/cop/style/redundant_return_spec.rb +22 -22
  338. data/spec/rubocop/cop/style/redundant_self_spec.rb +14 -14
  339. data/spec/rubocop/cop/style/regexp_literal_spec.rb +88 -67
  340. data/spec/rubocop/cop/style/rescue_modifier_spec.rb +17 -17
  341. data/spec/rubocop/cop/style/self_assignment_spec.rb +43 -0
  342. data/spec/rubocop/cop/style/semicolon_spec.rb +31 -17
  343. data/spec/rubocop/cop/style/signal_exception_spec.rb +29 -29
  344. data/spec/rubocop/cop/style/single_line_block_params_spec.rb +6 -6
  345. data/spec/rubocop/cop/style/single_line_methods_spec.rb +44 -6
  346. data/spec/rubocop/cop/style/space_after_colon_spec.rb +1 -1
  347. data/spec/rubocop/cop/style/space_after_comma_spec.rb +3 -3
  348. data/spec/rubocop/cop/style/space_after_control_keyword_spec.rb +12 -12
  349. data/spec/rubocop/cop/style/space_after_method_name_spec.rb +8 -8
  350. data/spec/rubocop/cop/style/space_after_not_spec.rb +3 -3
  351. data/spec/rubocop/cop/style/space_after_semicolon_spec.rb +1 -1
  352. data/spec/rubocop/cop/style/space_around_equals_in_parameter_default_spec.rb +63 -21
  353. data/spec/rubocop/cop/style/space_around_operators_spec.rb +24 -24
  354. data/spec/rubocop/cop/style/space_before_block_braces_spec.rb +72 -0
  355. data/spec/rubocop/cop/style/space_before_modifier_keyword_spec.rb +4 -4
  356. data/spec/rubocop/cop/style/{space_around_block_braces_spec.rb → space_inside_block_braces_spec.rb} +39 -41
  357. data/spec/rubocop/cop/style/space_inside_brackets_spec.rb +1 -1
  358. data/spec/rubocop/cop/style/space_inside_hash_literal_braces_spec.rb +15 -15
  359. data/spec/rubocop/cop/style/space_inside_parens_spec.rb +1 -1
  360. data/spec/rubocop/cop/style/special_global_vars_spec.rb +10 -10
  361. data/spec/rubocop/cop/style/string_literals_spec.rb +31 -31
  362. data/spec/rubocop/cop/style/symbol_array_spec.rb +9 -9
  363. data/spec/rubocop/cop/style/tab_spec.rb +3 -3
  364. data/spec/rubocop/cop/style/trailing_blank_lines_spec.rb +3 -3
  365. data/spec/rubocop/cop/style/trailing_comma_spec.rb +32 -32
  366. data/spec/rubocop/cop/style/trailing_whitespace_spec.rb +5 -5
  367. data/spec/rubocop/cop/style/trivial_accessors_spec.rb +39 -39
  368. data/spec/rubocop/cop/style/unless_else_spec.rb +1 -1
  369. data/spec/rubocop/cop/style/variable_interpolation_spec.rb +12 -12
  370. data/spec/rubocop/cop/style/variable_name_spec.rb +21 -21
  371. data/spec/rubocop/cop/style/when_then_spec.rb +1 -1
  372. data/spec/rubocop/cop/style/while_until_do_spec.rb +8 -8
  373. data/spec/rubocop/cop/style/while_until_modifier_spec.rb +25 -7
  374. data/spec/rubocop/cop/style/word_array_spec.rb +23 -23
  375. data/spec/rubocop/cop/team_spec.rb +14 -14
  376. data/spec/rubocop/file_inspector_spec.rb +14 -12
  377. data/spec/rubocop/formatter/base_formatter_spec.rb +19 -19
  378. data/spec/rubocop/formatter/clang_style_formatter_spec.rb +14 -14
  379. data/spec/rubocop/formatter/disabled_config_formatter_spec.rb +7 -7
  380. data/spec/rubocop/formatter/emacs_style_formatter_spec.rb +7 -7
  381. data/spec/rubocop/formatter/file_list_formatter_spec.rb +4 -4
  382. data/spec/rubocop/formatter/fuubar_style_formatter_spec.rb +129 -0
  383. data/spec/rubocop/formatter/json_formatter_spec.rb +23 -19
  384. data/spec/rubocop/formatter/offense_count_formatter_spec.rb +77 -0
  385. data/spec/rubocop/formatter/progress_formatter_spec.rb +27 -27
  386. data/spec/rubocop/formatter/simple_text_formatter_spec.rb +16 -16
  387. data/spec/rubocop/options_spec.rb +7 -8
  388. data/spec/rubocop/source_parser_spec.rb +0 -54
  389. data/spec/spec_helper.rb +11 -7
  390. data/spec/support/file_helper.rb +1 -1
  391. data/spec/support/mri_syntax_checker.rb +4 -4
  392. data/spec/support/shared_examples.rb +6 -6
  393. data/spec/support/statement_modifier_helper.rb +3 -3
  394. metadata +76 -16
  395. data/lib/rubocop/cop/style/favor_sprintf.rb +0 -26
  396. data/lib/rubocop/formatter/offence_count_formatter.rb +0 -49
  397. data/spec/rubocop/cop/style/favor_sprintf_spec.rb +0 -47
  398. data/spec/rubocop/formatter/offence_count_formatter_spec.rb +0 -52
@@ -5,40 +5,40 @@ require 'spec_helper'
5
5
  describe Rubocop::Cop::Style::ConstantName do
6
6
  subject(:cop) { described_class.new }
7
7
 
8
- it 'registers an offence for camel case in const name' do
8
+ it 'registers an offense for camel case in const name' do
9
9
  inspect_source(cop,
10
10
  ['TopCase = 5'])
11
- expect(cop.offences.size).to eq(1)
11
+ expect(cop.offenses.size).to eq(1)
12
12
  end
13
13
 
14
- it 'registers offences for camel case in multiple const assignment' do
14
+ it 'registers offenses for camel case in multiple const assignment' do
15
15
  inspect_source(cop,
16
16
  ['TopCase, Test2, TEST_3 = 5, 6, 7'])
17
- expect(cop.offences.size).to eq(2)
17
+ expect(cop.offenses.size).to eq(2)
18
18
  end
19
19
 
20
- it 'registers an offence for snake case in const name' do
20
+ it 'registers an offense for snake case in const name' do
21
21
  inspect_source(cop,
22
22
  ['TOP_test = 5'])
23
- expect(cop.offences.size).to eq(1)
23
+ expect(cop.offenses.size).to eq(1)
24
24
  end
25
25
 
26
26
  it 'allows screaming snake case in const name' do
27
27
  inspect_source(cop,
28
28
  ['TOP_TEST = 5'])
29
- expect(cop.offences).to be_empty
29
+ expect(cop.offenses).to be_empty
30
30
  end
31
31
 
32
32
  it 'allows screaming snake case in multiple const assignment' do
33
33
  inspect_source(cop,
34
34
  ['TOP_TEST, TEST_2 = 5, 6'])
35
- expect(cop.offences).to be_empty
35
+ expect(cop.offenses).to be_empty
36
36
  end
37
37
 
38
38
  it 'does not check names if rhs is a method call' do
39
39
  inspect_source(cop,
40
40
  ['AnythingGoes = test'])
41
- expect(cop.offences).to be_empty
41
+ expect(cop.offenses).to be_empty
42
42
  end
43
43
 
44
44
  it 'does not check names if rhs is a method call with block' do
@@ -47,19 +47,19 @@ describe Rubocop::Cop::Style::ConstantName do
47
47
  ' do_something',
48
48
  'end'
49
49
  ])
50
- expect(cop.offences).to be_empty
50
+ expect(cop.offenses).to be_empty
51
51
  end
52
52
 
53
53
  it 'does not check if rhs is another constant' do
54
54
  inspect_source(cop,
55
55
  ['Parser::CurrentRuby = Parser::Ruby20'])
56
- expect(cop.offences).to be_empty
56
+ expect(cop.offenses).to be_empty
57
57
  end
58
58
 
59
59
  it 'checks qualified const names' do
60
60
  inspect_source(cop,
61
61
  ['::AnythingGoes = 30',
62
62
  'a::Bar_foo = 10'])
63
- expect(cop.offences.size).to eq(2)
63
+ expect(cop.offenses.size).to eq(2)
64
64
  end
65
65
  end
@@ -12,7 +12,7 @@ describe Rubocop::Cop::Style::CyclomaticComplexity, :config do
12
12
  inspect_source(cop, ['def method_name',
13
13
  ' call_foo',
14
14
  'end'])
15
- expect(cop.offences).to be_empty
15
+ expect(cop.offenses).to be_empty
16
16
  end
17
17
 
18
18
  it 'accepts complex code outside of methods' do
@@ -25,20 +25,20 @@ describe Rubocop::Cop::Style::CyclomaticComplexity, :config do
25
25
  ' call_foo if second_condition && third_condition',
26
26
  ' call_bar if fourth_condition || fifth_condition',
27
27
  'end'])
28
- expect(cop.offences).to be_empty
28
+ expect(cop.offenses).to be_empty
29
29
  end
30
30
 
31
- it 'registers an offence for an if modifier' do
31
+ it 'registers an offense for an if modifier' do
32
32
  inspect_source(cop, ['def self.method_name',
33
33
  ' call_foo if some_condition',
34
34
  'end'])
35
35
  expect(cop.messages)
36
36
  .to eq(['Cyclomatic complexity for method_name is too high. [2/1]'])
37
37
  expect(cop.highlights).to eq(['def'])
38
- expect(cop.config_to_allow_offences).to eq('Max' => 2)
38
+ expect(cop.config_to_allow_offenses).to eq('Max' => 2)
39
39
  end
40
40
 
41
- it 'registers an offence for an unless modifier' do
41
+ it 'registers an offense for an unless modifier' do
42
42
  inspect_source(cop, ['def method_name',
43
43
  ' call_foo unless some_condition',
44
44
  'end'])
@@ -46,7 +46,7 @@ describe Rubocop::Cop::Style::CyclomaticComplexity, :config do
46
46
  .to eq(['Cyclomatic complexity for method_name is too high. [2/1]'])
47
47
  end
48
48
 
49
- it 'registers an offence for an elsif block' do
49
+ it 'registers an offense for an elsif block' do
50
50
  inspect_source(cop, ['def method_name',
51
51
  ' if first_condition then',
52
52
  ' call_foo',
@@ -60,7 +60,7 @@ describe Rubocop::Cop::Style::CyclomaticComplexity, :config do
60
60
  .to eq(['Cyclomatic complexity for method_name is too high. [3/1]'])
61
61
  end
62
62
 
63
- it 'registers an offence for a ternary operator' do
63
+ it 'registers an offense for a ternary operator' do
64
64
  inspect_source(cop, ['def method_name',
65
65
  ' value = some_condition ? 1 : 2',
66
66
  'end'])
@@ -68,7 +68,7 @@ describe Rubocop::Cop::Style::CyclomaticComplexity, :config do
68
68
  .to eq(['Cyclomatic complexity for method_name is too high. [2/1]'])
69
69
  end
70
70
 
71
- it 'registers an offence for a while block' do
71
+ it 'registers an offense for a while block' do
72
72
  inspect_source(cop, ['def method_name',
73
73
  ' while some_condition do',
74
74
  ' call_foo',
@@ -78,7 +78,7 @@ describe Rubocop::Cop::Style::CyclomaticComplexity, :config do
78
78
  .to eq(['Cyclomatic complexity for method_name is too high. [2/1]'])
79
79
  end
80
80
 
81
- it 'registers an offence for an until block' do
81
+ it 'registers an offense for an until block' do
82
82
  inspect_source(cop, ['def method_name',
83
83
  ' until some_condition do',
84
84
  ' call_foo',
@@ -88,7 +88,7 @@ describe Rubocop::Cop::Style::CyclomaticComplexity, :config do
88
88
  .to eq(['Cyclomatic complexity for method_name is too high. [2/1]'])
89
89
  end
90
90
 
91
- it 'registers an offence for a for block' do
91
+ it 'registers an offense for a for block' do
92
92
  inspect_source(cop, ['def method_name',
93
93
  ' for i in 1..2 do',
94
94
  ' call_method',
@@ -98,7 +98,7 @@ describe Rubocop::Cop::Style::CyclomaticComplexity, :config do
98
98
  .to eq(['Cyclomatic complexity for method_name is too high. [2/1]'])
99
99
  end
100
100
 
101
- it 'registers an offence for a rescue block' do
101
+ it 'registers an offense for a rescue block' do
102
102
  inspect_source(cop, ['def method_name',
103
103
  ' begin',
104
104
  ' call_foo',
@@ -110,7 +110,7 @@ describe Rubocop::Cop::Style::CyclomaticComplexity, :config do
110
110
  .to eq(['Cyclomatic complexity for method_name is too high. [2/1]'])
111
111
  end
112
112
 
113
- it 'registers an offence for a case/when block' do
113
+ it 'registers an offense for a case/when block' do
114
114
  inspect_source(cop, ['def method_name',
115
115
  ' case value',
116
116
  ' when 1',
@@ -123,7 +123,7 @@ describe Rubocop::Cop::Style::CyclomaticComplexity, :config do
123
123
  .to eq(['Cyclomatic complexity for method_name is too high. [3/1]'])
124
124
  end
125
125
 
126
- it 'registers an offence for &&' do
126
+ it 'registers an offense for &&' do
127
127
  inspect_source(cop, ['def method_name',
128
128
  ' call_foo && call_bar',
129
129
  'end'])
@@ -131,7 +131,7 @@ describe Rubocop::Cop::Style::CyclomaticComplexity, :config do
131
131
  .to eq(['Cyclomatic complexity for method_name is too high. [2/1]'])
132
132
  end
133
133
 
134
- it 'registers an offence for and' do
134
+ it 'registers an offense for and' do
135
135
  inspect_source(cop, ['def method_name',
136
136
  ' call_foo and call_bar',
137
137
  'end'])
@@ -139,7 +139,7 @@ describe Rubocop::Cop::Style::CyclomaticComplexity, :config do
139
139
  .to eq(['Cyclomatic complexity for method_name is too high. [2/1]'])
140
140
  end
141
141
 
142
- it 'registers an offence for ||' do
142
+ it 'registers an offense for ||' do
143
143
  inspect_source(cop, ['def method_name',
144
144
  ' call_foo || call_bar',
145
145
  'end'])
@@ -147,7 +147,7 @@ describe Rubocop::Cop::Style::CyclomaticComplexity, :config do
147
147
  .to eq(['Cyclomatic complexity for method_name is too high. [2/1]'])
148
148
  end
149
149
 
150
- it 'registers an offence for or' do
150
+ it 'registers an offense for or' do
151
151
  inspect_source(cop, ['def method_name',
152
152
  ' call_foo or call_bar',
153
153
  'end'])
@@ -5,31 +5,31 @@ require 'spec_helper'
5
5
  describe Rubocop::Cop::Style::DefWithParentheses do
6
6
  subject(:cop) { described_class.new }
7
7
 
8
- it 'reports an offence for def with empty parens' do
8
+ it 'reports an offense for def with empty parens' do
9
9
  src = ['def func()',
10
10
  'end']
11
11
  inspect_source(cop, src)
12
- expect(cop.offences.size).to eq(1)
12
+ expect(cop.offenses.size).to eq(1)
13
13
  end
14
14
 
15
- it 'reports an offence for class def with empty parens' do
15
+ it 'reports an offense for class def with empty parens' do
16
16
  src = ['def Test.func()',
17
17
  'end']
18
18
  inspect_source(cop, src)
19
- expect(cop.offences.size).to eq(1)
19
+ expect(cop.offenses.size).to eq(1)
20
20
  end
21
21
 
22
22
  it 'accepts def with arg and parens' do
23
23
  src = ['def func(a)',
24
24
  'end']
25
25
  inspect_source(cop, src)
26
- expect(cop.offences).to be_empty
26
+ expect(cop.offenses).to be_empty
27
27
  end
28
28
 
29
29
  it 'accepts empty parentheses in one liners' do
30
30
  src = ["def to_s() join '/' end"]
31
31
  inspect_source(cop, src)
32
- expect(cop.offences).to be_empty
32
+ expect(cop.offenses).to be_empty
33
33
  end
34
34
 
35
35
  it 'auto-removes unneeded parens' do
@@ -11,13 +11,13 @@ describe Rubocop::Cop::Style::Documentation do
11
11
  })
12
12
  end
13
13
 
14
- it 'registers an offence for non-empty class' do
14
+ it 'registers an offense for non-empty class' do
15
15
  inspect_source(cop,
16
16
  ['class My_Class',
17
17
  ' TEST = 20',
18
18
  'end'
19
19
  ])
20
- expect(cop.offences.size).to eq(1)
20
+ expect(cop.offenses.size).to eq(1)
21
21
  end
22
22
 
23
23
  it 'does not consider comment followed by empty line to be class ' \
@@ -30,26 +30,26 @@ describe Rubocop::Cop::Style::Documentation do
30
30
  ' TEST = 20',
31
31
  'end'
32
32
  ])
33
- expect(cop.offences.size).to eq(1)
33
+ expect(cop.offenses.size).to eq(1)
34
34
  end
35
35
 
36
- it 'registers an offence for non-namespace' do
36
+ it 'registers an offense for non-namespace' do
37
37
  inspect_source(cop,
38
38
  ['module My_Class',
39
39
  ' TEST = 20',
40
40
  'end'
41
41
  ])
42
- expect(cop.offences.size).to eq(1)
42
+ expect(cop.offenses.size).to eq(1)
43
43
  end
44
44
 
45
- it 'registers an offence for empty module without documentation' do
45
+ it 'registers an offense for empty module without documentation' do
46
46
  # Because why would you have an empty module? It requires some
47
47
  # explanation.
48
48
  inspect_source(cop,
49
49
  ['module Test',
50
50
  'end'
51
51
  ])
52
- expect(cop.offences.size).to eq(1)
52
+ expect(cop.offenses.size).to eq(1)
53
53
  end
54
54
 
55
55
  it 'accepts non-empty class with documentation' do
@@ -59,17 +59,17 @@ describe Rubocop::Cop::Style::Documentation do
59
59
  ' TEST = 20',
60
60
  'end'
61
61
  ])
62
- expect(cop.offences).to be_empty
62
+ expect(cop.offenses).to be_empty
63
63
  end
64
64
 
65
- it 'registers an offence for non-empty class with annotation comment' do
65
+ it 'registers an offense for non-empty class with annotation comment' do
66
66
  inspect_source(cop,
67
67
  ['# OPTIMIZE: Make this faster.',
68
68
  'class My_Class',
69
69
  ' TEST = 20',
70
70
  'end'
71
71
  ])
72
- expect(cop.offences.size).to eq(1)
72
+ expect(cop.offenses.size).to eq(1)
73
73
  end
74
74
 
75
75
  it 'accepts non-empty module with documentation' do
@@ -79,7 +79,7 @@ describe Rubocop::Cop::Style::Documentation do
79
79
  ' TEST = 20',
80
80
  'end'
81
81
  ])
82
- expect(cop.offences).to be_empty
82
+ expect(cop.offenses).to be_empty
83
83
  end
84
84
 
85
85
  it 'accepts empty class without documentation' do
@@ -87,7 +87,7 @@ describe Rubocop::Cop::Style::Documentation do
87
87
  ['class My_Class',
88
88
  'end'
89
89
  ])
90
- expect(cop.offences).to be_empty
90
+ expect(cop.offenses).to be_empty
91
91
  end
92
92
 
93
93
  it 'accepts namespace module without documentation' do
@@ -97,7 +97,7 @@ describe Rubocop::Cop::Style::Documentation do
97
97
  ' class B; end',
98
98
  'end'
99
99
  ])
100
- expect(cop.offences).to be_empty
100
+ expect(cop.offenses).to be_empty
101
101
  end
102
102
 
103
103
  it 'accepts namespace class without documentation' do
@@ -107,7 +107,7 @@ describe Rubocop::Cop::Style::Documentation do
107
107
  ' class B; end',
108
108
  'end'
109
109
  ])
110
- expect(cop.offences).to be_empty
110
+ expect(cop.offenses).to be_empty
111
111
  end
112
112
 
113
113
  it 'does not raise an error for an implicit match conditional' do
@@ -6,89 +6,86 @@ describe Rubocop::Cop::Style::DotPosition, :config do
6
6
  subject(:cop) { described_class.new(config) }
7
7
 
8
8
  context 'Leading dots style' do
9
- let(:cop_config) { { 'Style' => 'leading' } }
9
+ let(:cop_config) { { 'EnforcedStyle' => 'leading' } }
10
10
 
11
- it 'registers an offence for trailing dot in multi-line call' do
11
+ it 'registers an offense for trailing dot in multi-line call' do
12
12
  inspect_source(cop, ['something.',
13
13
  ' method_name'])
14
- expect(cop.offences.size).to eq(1)
14
+ expect(cop.offenses.size).to eq(1)
15
15
  expect(cop.highlights).to eq(['.'])
16
- expect(cop.config_to_allow_offences).to eq('Style' => 'trailing')
16
+ expect(cop.config_to_allow_offenses).to eq('EnforcedStyle' => 'trailing')
17
17
  end
18
18
 
19
- it 'registers an offence for correct + opposite' do
19
+ it 'registers an offense for correct + opposite' do
20
20
  inspect_source(cop, ['something',
21
21
  ' .method_name',
22
22
  'something.',
23
23
  ' method_name'])
24
- expect(cop.offences.size).to eq(1)
25
- expect(cop.config_to_allow_offences).to eq('Enabled' => false)
24
+ expect(cop.offenses.size).to eq(1)
25
+ expect(cop.config_to_allow_offenses).to eq('Enabled' => false)
26
26
  end
27
27
 
28
28
  it 'accepts leading do in multi-line method call' do
29
29
  inspect_source(cop, ['something',
30
30
  ' .method_name'])
31
- expect(cop.offences).to be_empty
31
+ expect(cop.offenses).to be_empty
32
32
  end
33
33
 
34
34
  it 'does not err on method call with no dots' do
35
35
  inspect_source(cop, ['puts something'])
36
- expect(cop.offences).to be_empty
36
+ expect(cop.offenses).to be_empty
37
37
  end
38
38
 
39
39
  it 'does not err on method call without a method name' do
40
40
  inspect_source(cop, ['l.', '(1)'])
41
- expect(cop.offences.size).to eq(1)
41
+ expect(cop.offenses.size).to eq(1)
42
42
  end
43
43
 
44
44
  it 'does not err on method call on same line' do
45
45
  inspect_source(cop, ['something.method_name'])
46
- expect(cop.offences).to be_empty
46
+ expect(cop.offenses).to be_empty
47
47
  end
48
48
  end
49
49
 
50
50
  context 'Trailing dots style' do
51
- let(:cop_config) { { 'Style' => 'trailing' } }
51
+ let(:cop_config) { { 'EnforcedStyle' => 'trailing' } }
52
52
 
53
- it 'registers an offence for leading dot in multi-line call' do
53
+ it 'registers an offense for leading dot in multi-line call' do
54
54
  inspect_source(cop, ['something',
55
55
  ' .method_name'])
56
56
  expect(cop.messages)
57
57
  .to eq(['Place the . on the previous line, together with the method ' \
58
58
  'call receiver.'])
59
59
  expect(cop.highlights).to eq(['.'])
60
- expect(cop.config_to_allow_offences).to eq('Style' => 'leading')
60
+ expect(cop.config_to_allow_offenses).to eq('EnforcedStyle' => 'leading')
61
61
  end
62
62
 
63
63
  it 'accepts trailing dot in multi-line method call' do
64
64
  inspect_source(cop, ['something.',
65
65
  ' method_name'])
66
- expect(cop.offences).to be_empty
66
+ expect(cop.offenses).to be_empty
67
67
  end
68
68
 
69
69
  it 'does not err on method call with no dots' do
70
70
  inspect_source(cop, ['puts something'])
71
- expect(cop.offences).to be_empty
71
+ expect(cop.offenses).to be_empty
72
72
  end
73
73
 
74
74
  it 'does not err on method call without a method name' do
75
75
  inspect_source(cop, ['l', '.(1)'])
76
- expect(cop.offences.size).to eq(1)
76
+ expect(cop.offenses.size).to eq(1)
77
77
  end
78
78
 
79
79
  it 'does not err on method call on same line' do
80
80
  inspect_source(cop, ['something.method_name'])
81
- expect(cop.offences).to be_empty
81
+ expect(cop.offenses).to be_empty
82
82
  end
83
- end
84
-
85
- context 'Unknown style' do
86
- let(:cop_config) { { 'Style' => 'test' } }
87
83
 
88
- it 'raises an exception' do
89
- expect do
90
- inspect_source(cop, ['something.top'])
91
- end.to raise_error(RuntimeError)
84
+ it 'does not get confused by several lines of chained methods' do
85
+ inspect_source(cop, ['File.new(something).',
86
+ 'readlines.map.',
87
+ 'compact.join("\n")'])
88
+ expect(cop.offenses).to be_empty
92
89
  end
93
90
  end
94
91
  end