rubocop 0.13.1 → 0.14.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 (222) hide show
  1. checksums.yaml +4 -4
  2. data/.rubocop.yml +3 -0
  3. data/CHANGELOG.md +42 -0
  4. data/README.md +59 -54
  5. data/config/default.yml +124 -95
  6. data/config/disabled.yml +4 -0
  7. data/config/enabled.yml +286 -264
  8. data/lib/rubocop.rb +10 -3
  9. data/lib/rubocop/cli.rb +10 -171
  10. data/lib/rubocop/cop/cop.rb +14 -11
  11. data/lib/rubocop/cop/lint/debugger.rb +35 -0
  12. data/lib/rubocop/cop/lint/syntax.rb +34 -0
  13. data/lib/rubocop/cop/offence.rb +15 -23
  14. data/lib/rubocop/cop/style/align_array.rb +1 -10
  15. data/lib/rubocop/cop/style/align_hash.rb +14 -2
  16. data/lib/rubocop/cop/style/align_parameters.rb +1 -11
  17. data/lib/rubocop/cop/style/and_or.rb +13 -11
  18. data/lib/rubocop/cop/style/attr.rb +1 -1
  19. data/lib/rubocop/cop/style/autocorrect_alignment.rb +31 -6
  20. data/lib/rubocop/cop/style/blocks.rb +14 -6
  21. data/lib/rubocop/cop/style/character_literal.rb +1 -1
  22. data/lib/rubocop/cop/style/class_length.rb +38 -0
  23. data/lib/rubocop/cop/style/collection_methods.rb +1 -1
  24. data/lib/rubocop/cop/style/colon_method_call.rb +1 -1
  25. data/lib/rubocop/cop/style/configurable_naming.rb +47 -0
  26. data/lib/rubocop/cop/style/def_parentheses.rb +2 -2
  27. data/lib/rubocop/cop/style/empty_literal.rb +1 -1
  28. data/lib/rubocop/cop/style/even_odd.rb +7 -3
  29. data/lib/rubocop/cop/style/hash_methods.rb +1 -1
  30. data/lib/rubocop/cop/style/hash_syntax.rb +36 -7
  31. data/lib/rubocop/cop/style/lambda_call.rb +36 -11
  32. data/lib/rubocop/cop/style/method_call_parentheses.rb +1 -1
  33. data/lib/rubocop/cop/style/method_called_on_do_end_block.rb +41 -0
  34. data/lib/rubocop/cop/style/method_length.rb +2 -13
  35. data/lib/rubocop/cop/style/method_name.rb +42 -0
  36. data/lib/rubocop/cop/style/numeric_literals.rb +4 -0
  37. data/lib/rubocop/cop/style/perl_backrefs.rb +1 -1
  38. data/lib/rubocop/cop/style/raise_args.rb +60 -0
  39. data/lib/rubocop/cop/style/redundant_exception.rb +32 -0
  40. data/lib/rubocop/cop/style/redundant_return.rb +14 -5
  41. data/lib/rubocop/cop/style/redundant_self.rb +1 -1
  42. data/lib/rubocop/cop/style/semicolon.rb +13 -4
  43. data/lib/rubocop/cop/style/signal_exception.rb +63 -14
  44. data/lib/rubocop/cop/style/special_global_vars.rb +1 -1
  45. data/lib/rubocop/cop/style/string_help.rb +4 -1
  46. data/lib/rubocop/cop/style/string_literals.rb +34 -11
  47. data/lib/rubocop/cop/style/surrounding_space.rb +64 -17
  48. data/lib/rubocop/cop/style/tab.rb +1 -1
  49. data/lib/rubocop/cop/style/variable_name.rb +44 -0
  50. data/lib/rubocop/cop/style/when_then.rb +1 -1
  51. data/lib/rubocop/cop/style/while_until_do.rb +1 -1
  52. data/lib/rubocop/cop/team.rb +4 -7
  53. data/lib/rubocop/cop/util.rb +12 -0
  54. data/lib/rubocop/formatter/clang_style_formatter.rb +1 -1
  55. data/lib/rubocop/formatter/emacs_style_formatter.rb +5 -2
  56. data/lib/rubocop/formatter/json_formatter.rb +1 -0
  57. data/lib/rubocop/formatter/progress_formatter.rb +9 -13
  58. data/lib/rubocop/formatter/simple_text_formatter.rb +63 -15
  59. data/lib/rubocop/options.rb +184 -0
  60. data/lib/rubocop/processed_source.rb +4 -0
  61. data/lib/rubocop/version.rb +1 -1
  62. data/rubocop.gemspec +1 -1
  63. data/spec/rubocop/cli_spec.rb +870 -1001
  64. data/spec/rubocop/config_spec.rb +13 -13
  65. data/spec/rubocop/config_store_spec.rb +38 -37
  66. data/spec/rubocop/cop/commissioner_spec.rb +42 -46
  67. data/spec/rubocop/cop/cop_spec.rb +72 -77
  68. data/spec/rubocop/cop/corrector_spec.rb +51 -55
  69. data/spec/rubocop/cop/lint/assignment_in_condition_spec.rb +100 -106
  70. data/spec/rubocop/cop/lint/block_alignment_spec.rb +403 -409
  71. data/spec/rubocop/cop/lint/debugger_spec.rb +39 -0
  72. data/spec/rubocop/cop/lint/empty_ensure_spec.rb +19 -25
  73. data/spec/rubocop/cop/lint/end_alignment_spec.rb +50 -56
  74. data/spec/rubocop/cop/lint/end_in_method_spec.rb +20 -26
  75. data/spec/rubocop/cop/lint/ensure_return_spec.rb +30 -36
  76. data/spec/rubocop/cop/lint/eval_spec.rb +25 -31
  77. data/spec/rubocop/cop/lint/handle_exceptions_spec.rb +22 -28
  78. data/spec/rubocop/cop/lint/literal_in_condition_spec.rb +51 -57
  79. data/spec/rubocop/cop/lint/loop_spec.rb +17 -23
  80. data/spec/rubocop/cop/lint/parentheses_as_grouped_expression_spec.rb +51 -57
  81. data/spec/rubocop/cop/lint/rescue_exception_spec.rb +105 -111
  82. data/spec/rubocop/cop/lint/shadowing_outer_local_variable_spec.rb +230 -236
  83. data/spec/rubocop/cop/lint/syntax_spec.rb +33 -0
  84. data/spec/rubocop/cop/lint/unreachable_code_spec.rb +51 -57
  85. data/spec/rubocop/cop/lint/useless_assignment_spec.rb +1544 -1550
  86. data/spec/rubocop/cop/lint/useless_comparison_spec.rb +21 -27
  87. data/spec/rubocop/cop/lint/useless_setter_call_spec.rb +119 -125
  88. data/spec/rubocop/cop/lint/void_spec.rb +50 -56
  89. data/spec/rubocop/cop/offence_spec.rb +101 -131
  90. data/spec/rubocop/cop/rails/has_and_belongs_to_many_spec.rb +6 -12
  91. data/spec/rubocop/cop/rails/read_attribute_spec.rb +6 -12
  92. data/spec/rubocop/cop/rails/validation_spec.rb +13 -19
  93. data/spec/rubocop/cop/style/access_control_spec.rb +146 -152
  94. data/spec/rubocop/cop/style/alias_spec.rb +30 -36
  95. data/spec/rubocop/cop/style/align_array_spec.rb +57 -56
  96. data/spec/rubocop/cop/style/align_hash_spec.rb +256 -237
  97. data/spec/rubocop/cop/style/align_parameters_spec.rb +216 -202
  98. data/spec/rubocop/cop/style/and_or_spec.rb +51 -55
  99. data/spec/rubocop/cop/style/ascii_comments_spec.rb +14 -20
  100. data/spec/rubocop/cop/style/ascii_identifiers_spec.rb +26 -32
  101. data/spec/rubocop/cop/style/attr_spec.rb +11 -17
  102. data/spec/rubocop/cop/style/begin_block_spec.rb +6 -12
  103. data/spec/rubocop/cop/style/block_comments_spec.rb +13 -19
  104. data/spec/rubocop/cop/style/block_nesting_spec.rb +134 -140
  105. data/spec/rubocop/cop/style/blocks_spec.rb +81 -84
  106. data/spec/rubocop/cop/style/case_equality_spec.rb +5 -11
  107. data/spec/rubocop/cop/style/case_indentation_spec.rb +71 -77
  108. data/spec/rubocop/cop/style/character_literal_spec.rb +31 -37
  109. data/spec/rubocop/cop/style/class_and_module_camel_case_spec.rb +31 -37
  110. data/spec/rubocop/cop/style/class_length_spec.rb +65 -0
  111. data/spec/rubocop/cop/style/class_methods_spec.rb +35 -41
  112. data/spec/rubocop/cop/style/class_vars_spec.rb +11 -17
  113. data/spec/rubocop/cop/style/collection_methods_spec.rb +41 -47
  114. data/spec/rubocop/cop/style/colon_method_call_spec.rb +45 -51
  115. data/spec/rubocop/cop/style/comment_annotation_spec.rb +79 -85
  116. data/spec/rubocop/cop/style/constant_name_spec.rb +45 -51
  117. data/spec/rubocop/cop/style/def_with_parentheses_spec.rb +28 -34
  118. data/spec/rubocop/cop/style/def_without_parentheses_spec.rb +23 -29
  119. data/spec/rubocop/cop/style/documentation_spec.rb +60 -66
  120. data/spec/rubocop/cop/style/dot_position_spec.rb +50 -56
  121. data/spec/rubocop/cop/style/empty_line_between_defs_spec.rb +109 -110
  122. data/spec/rubocop/cop/style/empty_lines_spec.rb +28 -34
  123. data/spec/rubocop/cop/style/empty_literal_spec.rb +80 -86
  124. data/spec/rubocop/cop/style/encoding_spec.rb +50 -56
  125. data/spec/rubocop/cop/style/end_block_spec.rb +6 -12
  126. data/spec/rubocop/cop/style/end_of_line_spec.rb +13 -19
  127. data/spec/rubocop/cop/style/even_odd_spec.rb +69 -41
  128. data/spec/rubocop/cop/style/favor_join_spec.rb +21 -27
  129. data/spec/rubocop/cop/style/favor_modifier_spec.rb +180 -176
  130. data/spec/rubocop/cop/style/favor_sprintf_spec.rb +41 -47
  131. data/spec/rubocop/cop/style/favor_unless_over_negated_if_spec.rb +63 -69
  132. data/spec/rubocop/cop/style/favor_until_over_negated_while_spec.rb +32 -38
  133. data/spec/rubocop/cop/style/final_newline_spec.rb +16 -22
  134. data/spec/rubocop/cop/style/for_spec.rb +18 -24
  135. data/spec/rubocop/cop/style/global_vars_spec.rb +23 -29
  136. data/spec/rubocop/cop/style/hash_methods_spec.rb +39 -45
  137. data/spec/rubocop/cop/style/hash_syntax_spec.rb +93 -65
  138. data/spec/rubocop/cop/style/if_with_semicolon_spec.rb +11 -17
  139. data/spec/rubocop/cop/style/indentation_width_spec.rb +377 -383
  140. data/spec/rubocop/cop/style/lambda_call_spec.rb +40 -22
  141. data/spec/rubocop/cop/style/lambda_spec.rb +30 -34
  142. data/spec/rubocop/cop/style/leading_comment_space_spec.rb +44 -50
  143. data/spec/rubocop/cop/style/line_length_spec.rb +11 -17
  144. data/spec/rubocop/cop/style/method_call_parentheses_spec.rb +14 -20
  145. data/spec/rubocop/cop/style/method_called_on_do_end_block_spec.rb +60 -0
  146. data/spec/rubocop/cop/style/method_length_spec.rb +127 -133
  147. data/spec/rubocop/cop/style/method_name_spec.rb +103 -0
  148. data/spec/rubocop/cop/style/module_function_spec.rb +16 -22
  149. data/spec/rubocop/cop/style/multiline_block_chain_spec.rb +64 -70
  150. data/spec/rubocop/cop/style/multiline_if_then_spec.rb +74 -80
  151. data/spec/rubocop/cop/style/nil_comparison_spec.rb +20 -26
  152. data/spec/rubocop/cop/style/not_spec.rb +13 -19
  153. data/spec/rubocop/cop/style/numeric_literals_spec.rb +36 -35
  154. data/spec/rubocop/cop/style/one_line_conditional_spec.rb +5 -11
  155. data/spec/rubocop/cop/style/op_method_spec.rb +61 -67
  156. data/spec/rubocop/cop/style/parameter_lists_spec.rb +31 -37
  157. data/spec/rubocop/cop/style/parentheses_around_condition_spec.rb +62 -68
  158. data/spec/rubocop/cop/style/perl_backrefs_spec.rb +9 -15
  159. data/spec/rubocop/cop/style/proc_spec.rb +13 -19
  160. data/spec/rubocop/cop/style/raise_args_spec.rb +55 -0
  161. data/spec/rubocop/cop/style/reduce_arguments_spec.rb +49 -55
  162. data/spec/rubocop/cop/style/redundant_begin_spec.rb +47 -53
  163. data/spec/rubocop/cop/style/redundant_exception_spec.rb +27 -0
  164. data/spec/rubocop/cop/style/redundant_return_spec.rb +164 -72
  165. data/spec/rubocop/cop/style/redundant_self_spec.rb +109 -115
  166. data/spec/rubocop/cop/style/regexp_literal_spec.rb +57 -63
  167. data/spec/rubocop/cop/style/rescue_modifier_spec.rb +99 -105
  168. data/spec/rubocop/cop/style/semicolon_spec.rb +95 -90
  169. data/spec/rubocop/cop/style/signal_exception_spec.rb +248 -95
  170. data/spec/rubocop/cop/style/single_line_methods_spec.rb +45 -51
  171. data/spec/rubocop/cop/style/space_after_colon_spec.rb +14 -20
  172. data/spec/rubocop/cop/style/space_after_comma_spec.rb +16 -22
  173. data/spec/rubocop/cop/style/space_after_control_keyword_spec.rb +48 -54
  174. data/spec/rubocop/cop/style/space_after_method_name_spec.rb +49 -55
  175. data/spec/rubocop/cop/style/space_after_semicolon_spec.rb +10 -16
  176. data/spec/rubocop/cop/style/space_around_block_braces_spec.rb +118 -50
  177. data/spec/rubocop/cop/style/space_around_equals_in_default_parameter_spec.rb +18 -24
  178. data/spec/rubocop/cop/style/space_around_operators_spec.rb +204 -210
  179. data/spec/rubocop/cop/style/space_before_modifier_keyword_spec.rb +36 -42
  180. data/spec/rubocop/cop/style/space_inside_brackets_spec.rb +39 -45
  181. data/spec/rubocop/cop/style/space_inside_hash_literal_braces_spec.rb +62 -68
  182. data/spec/rubocop/cop/style/space_inside_parens_spec.rb +18 -24
  183. data/spec/rubocop/cop/style/special_global_vars_spec.rb +40 -46
  184. data/spec/rubocop/cop/style/string_literals_spec.rb +148 -70
  185. data/spec/rubocop/cop/style/symbol_array_spec.rb +28 -34
  186. data/spec/rubocop/cop/style/symbol_name_spec.rb +132 -138
  187. data/spec/rubocop/cop/style/tab_spec.rb +9 -15
  188. data/spec/rubocop/cop/style/ternary_operator_spec.rb +25 -31
  189. data/spec/rubocop/cop/style/trailing_blank_lines_spec.rb +10 -16
  190. data/spec/rubocop/cop/style/trailing_whitespace_spec.rb +14 -20
  191. data/spec/rubocop/cop/style/trivial_accessors_spec.rb +374 -380
  192. data/spec/rubocop/cop/style/unless_else_spec.rb +17 -23
  193. data/spec/rubocop/cop/style/variable_interpolation_spec.rb +36 -42
  194. data/spec/rubocop/cop/style/variable_name_spec.rb +83 -0
  195. data/spec/rubocop/cop/style/when_then_spec.rb +31 -37
  196. data/spec/rubocop/cop/style/while_until_do_spec.rb +47 -53
  197. data/spec/rubocop/cop/style/word_array_spec.rb +49 -55
  198. data/spec/rubocop/cop/team_spec.rb +125 -127
  199. data/spec/rubocop/cop/variable_inspector/assignment_spec.rb +176 -180
  200. data/spec/rubocop/cop/variable_inspector/locatable_spec.rb +580 -586
  201. data/spec/rubocop/cop/variable_inspector/scope_spec.rb +140 -146
  202. data/spec/rubocop/cop/variable_inspector/variable_spec.rb +52 -58
  203. data/spec/rubocop/cop/variable_inspector/variable_table_spec.rb +217 -223
  204. data/spec/rubocop/cop/variable_inspector_spec.rb +15 -19
  205. data/spec/rubocop/formatter/clang_style_formatter_spec.rb +35 -36
  206. data/spec/rubocop/formatter/disabled_config_formatter_spec.rb +2 -2
  207. data/spec/rubocop/formatter/emacs_style_formatter_spec.rb +24 -1
  208. data/spec/rubocop/formatter/file_list_formatter_spec.rb +1 -1
  209. data/spec/rubocop/formatter/formatter_set_spec.rb +3 -3
  210. data/spec/rubocop/formatter/json_formatter_spec.rb +7 -2
  211. data/spec/rubocop/formatter/offence_count_formatter_spec.rb +1 -1
  212. data/spec/rubocop/formatter/progress_formatter_spec.rb +1 -1
  213. data/spec/rubocop/formatter/simple_text_formatter_spec.rb +55 -6
  214. data/spec/rubocop/options_spec.rb +233 -0
  215. data/spec/rubocop/processed_source_spec.rb +85 -42
  216. data/spec/rubocop/source_parser_spec.rb +108 -110
  217. data/spec/rubocop/target_finder_spec.rb +125 -127
  218. data/spec/rubocop/token_spec.rb +15 -17
  219. metadata +32 -8
  220. data/lib/rubocop/backports/bsearch.rb +0 -39
  221. data/lib/rubocop/cop/style/method_and_variable_snake_case.rb +0 -77
  222. data/spec/rubocop/cop/style/method_and_variable_snake_case_spec.rb +0 -102
@@ -2,57 +2,51 @@
2
2
 
3
3
  require 'spec_helper'
4
4
 
5
- module Rubocop
6
- module Cop
7
- module Style
8
- describe SingleLineMethods, :config do
9
- subject(:slm) { SingleLineMethods.new(config) }
10
- let(:cop_config) { { 'AllowIfMethodIsEmpty' => true } }
11
-
12
- it 'registers an offence for a single-line method' do
13
- inspect_source(slm,
14
- ['def some_method; body end',
15
- 'def link_to(name, url); {:name => name}; end',
16
- 'def @table.columns; super; end'])
17
- expect(slm.messages).to eq(
18
- [SingleLineMethods::MSG] * 3)
19
- end
20
-
21
- context 'when AllowIfMethodIsEmpty is disabled' do
22
- let(:cop_config) { { 'AllowIfMethodIsEmpty' => false } }
23
-
24
- it 'registers an offence for an empty method' do
25
- inspect_source(slm, ['def no_op; end',
26
- 'def self.resource_class=(klass); end',
27
- 'def @table.columns; end'])
28
- expect(slm.offences.size).to eq(3)
29
- end
30
- end
31
-
32
- context 'when AllowIfMethodIsEmpty is enabled' do
33
- let(:cop_config) { { 'AllowIfMethodIsEmpty' => true } }
34
-
35
- it 'accepts a single-line empty method' do
36
- inspect_source(slm, ['def no_op; end',
37
- 'def self.resource_class=(klass); end',
38
- 'def @table.columns; end'])
39
- expect(slm.offences).to be_empty
40
- end
41
- end
42
-
43
- it 'accepts a multi-line method' do
44
- inspect_source(slm, ['def some_method',
45
- ' body',
46
- 'end'])
47
- expect(slm.offences).to be_empty
48
- end
49
-
50
- it 'does not crash on an method with a capitalized name' do
51
- inspect_source(slm, ['def NoSnakeCase',
52
- 'end'])
53
- expect(slm.offences).to be_empty
54
- end
55
- end
5
+ describe Rubocop::Cop::Style::SingleLineMethods, :config do
6
+ subject(:cop) { described_class.new(config) }
7
+ let(:cop_config) { { 'AllowIfMethodIsEmpty' => true } }
8
+
9
+ it 'registers an offence for a single-line method' do
10
+ inspect_source(cop,
11
+ ['def some_method; body end',
12
+ 'def link_to(name, url); {:name => name}; end',
13
+ 'def @table.columns; super; end'])
14
+ expect(cop.messages).to eq(
15
+ ['Avoid single-line method definitions.'] * 3)
16
+ end
17
+
18
+ context 'when AllowIfMethodIsEmpty is disabled' do
19
+ let(:cop_config) { { 'AllowIfMethodIsEmpty' => false } }
20
+
21
+ it 'registers an offence for an empty method' do
22
+ inspect_source(cop, ['def no_op; end',
23
+ 'def self.resource_class=(klass); end',
24
+ 'def @table.columns; end'])
25
+ expect(cop.offences.size).to eq(3)
56
26
  end
57
27
  end
28
+
29
+ context 'when AllowIfMethodIsEmpty is enabled' do
30
+ let(:cop_config) { { 'AllowIfMethodIsEmpty' => true } }
31
+
32
+ it 'accepts a single-line empty method' do
33
+ inspect_source(cop, ['def no_op; end',
34
+ 'def self.resource_class=(klass); end',
35
+ 'def @table.columns; end'])
36
+ expect(cop.offences).to be_empty
37
+ end
38
+ end
39
+
40
+ it 'accepts a multi-line method' do
41
+ inspect_source(cop, ['def some_method',
42
+ ' body',
43
+ 'end'])
44
+ expect(cop.offences).to be_empty
45
+ end
46
+
47
+ it 'does not crash on an method with a capitalized name' do
48
+ inspect_source(cop, ['def NoSnakeCase',
49
+ 'end'])
50
+ expect(cop.offences).to be_empty
51
+ end
58
52
  end
@@ -2,28 +2,22 @@
2
2
 
3
3
  require 'spec_helper'
4
4
 
5
- module Rubocop
6
- module Cop
7
- module Style
8
- describe SpaceAfterColon do
9
- subject(:space) { SpaceAfterColon.new }
5
+ describe Rubocop::Cop::Style::SpaceAfterColon do
6
+ subject(:cop) { described_class.new }
10
7
 
11
- it 'registers an offence for colon without space after it' do
12
- inspect_source(space, ['x = w ? {a:3}:4'])
13
- expect(space.messages).to eq(
14
- ['Space missing after colon.'] * 2)
15
- end
8
+ it 'registers an offence for colon without space after it' do
9
+ inspect_source(cop, ['x = w ? {a:3}:4'])
10
+ expect(cop.messages).to eq(
11
+ ['Space missing after colon.'] * 2)
12
+ end
16
13
 
17
- it 'allows the colons in symbols' do
18
- inspect_source(space, ['x = :a'])
19
- expect(space.messages).to be_empty
20
- end
14
+ it 'allows the colons in symbols' do
15
+ inspect_source(cop, ['x = :a'])
16
+ expect(cop.messages).to be_empty
17
+ end
21
18
 
22
- it 'allows colons in strings' do
23
- inspect_source(space, ["str << ':'"])
24
- expect(space.messages).to be_empty
25
- end
26
- end
27
- end
19
+ it 'allows colons in strings' do
20
+ inspect_source(cop, ["str << ':'"])
21
+ expect(cop.messages).to be_empty
28
22
  end
29
23
  end
@@ -2,30 +2,24 @@
2
2
 
3
3
  require 'spec_helper'
4
4
 
5
- module Rubocop
6
- module Cop
7
- module Style
8
- describe SpaceAfterComma do
9
- subject(:space) { SpaceAfterComma.new }
5
+ describe Rubocop::Cop::Style::SpaceAfterComma do
6
+ subject(:cop) { described_class.new }
10
7
 
11
- it 'registers an offence for block argument commas without space' do
12
- inspect_source(space, ['each { |s,t| }'])
13
- expect(space.messages).to eq(
14
- ['Space missing after comma.'])
15
- end
8
+ it 'registers an offence for block argument commas without space' do
9
+ inspect_source(cop, ['each { |s,t| }'])
10
+ expect(cop.messages).to eq(
11
+ ['Space missing after comma.'])
12
+ end
16
13
 
17
- it 'registers an offence for array index commas without space' do
18
- inspect_source(space, ['formats[0,1]'])
19
- expect(space.messages).to eq(
20
- ['Space missing after comma.'])
21
- end
14
+ it 'registers an offence for array index commas without space' do
15
+ inspect_source(cop, ['formats[0,1]'])
16
+ expect(cop.messages).to eq(
17
+ ['Space missing after comma.'])
18
+ end
22
19
 
23
- it 'registers an offence for method call arg commas without space' do
24
- inspect_source(space, ['a(1,2)'])
25
- expect(space.messages).to eq(
26
- ['Space missing after comma.'])
27
- end
28
- end
29
- end
20
+ it 'registers an offence for method call arg commas without space' do
21
+ inspect_source(cop, ['a(1,2)'])
22
+ expect(cop.messages).to eq(
23
+ ['Space missing after comma.'])
30
24
  end
31
25
  end
@@ -2,68 +2,62 @@
2
2
 
3
3
  require 'spec_helper'
4
4
 
5
- module Rubocop
6
- module Cop
7
- module Style
8
- describe SpaceAfterControlKeyword do
9
- subject(:ap) { SpaceAfterControlKeyword.new }
5
+ describe Rubocop::Cop::Style::SpaceAfterControlKeyword do
6
+ subject(:cop) { described_class.new }
10
7
 
11
- it 'registers an offence for normal if' do
12
- inspect_source(ap,
13
- ['if(test) then result end'])
14
- expect(ap.offences.size).to eq(1)
15
- end
8
+ it 'registers an offence for normal if' do
9
+ inspect_source(cop,
10
+ ['if(test) then result end'])
11
+ expect(cop.offences.size).to eq(1)
12
+ end
16
13
 
17
- it 'registers an offence for modifier unless' do
18
- inspect_source(ap, ['action unless(test)'])
14
+ it 'registers an offence for modifier unless' do
15
+ inspect_source(cop, ['action unless(test)'])
19
16
 
20
- expect(ap.offences.size).to eq(1)
21
- end
17
+ expect(cop.offences.size).to eq(1)
18
+ end
22
19
 
23
- it 'does not get confused by keywords' do
24
- inspect_source(ap, ['[:if, :unless].action'])
25
- expect(ap.offences).to be_empty
26
- end
20
+ it 'does not get confused by keywords' do
21
+ inspect_source(cop, ['[:if, :unless].action'])
22
+ expect(cop.offences).to be_empty
23
+ end
27
24
 
28
- it 'does not get confused by the ternary operator' do
29
- inspect_source(ap, ['a ? b : c'])
30
- expect(ap.offences).to be_empty
31
- end
25
+ it 'does not get confused by the ternary operator' do
26
+ inspect_source(cop, ['a ? b : c'])
27
+ expect(cop.offences).to be_empty
28
+ end
32
29
 
33
- it 'registers an offence for if, elsif, and unless' do
34
- inspect_source(ap,
35
- ['if(a)',
36
- 'elsif(b)',
37
- ' unless(c)',
38
- ' end',
39
- 'end'])
40
- expect(ap.offences.map(&:line)).to eq([1, 2, 3])
41
- end
30
+ it 'registers an offence for if, elsif, and unless' do
31
+ inspect_source(cop,
32
+ ['if(a)',
33
+ 'elsif(b)',
34
+ ' unless(c)',
35
+ ' end',
36
+ 'end'])
37
+ expect(cop.offences.map(&:line)).to eq([1, 2, 3])
38
+ end
42
39
 
43
- it 'registers an offence for case and when' do
44
- inspect_source(ap,
45
- ['case(a)',
46
- 'when(0) then 1',
47
- 'end'])
48
- expect(ap.offences.map(&:line)).to eq([1, 2])
49
- end
40
+ it 'registers an offence for case and when' do
41
+ inspect_source(cop,
42
+ ['case(a)',
43
+ 'when(0) then 1',
44
+ 'end'])
45
+ expect(cop.offences.map(&:line)).to eq([1, 2])
46
+ end
50
47
 
51
- it 'registers an offence for case and when' do
52
- inspect_source(ap,
53
- ['case(a)',
54
- 'when(0) then 1',
55
- 'end'])
56
- expect(ap.offences.map(&:line)).to eq([1, 2])
57
- end
48
+ it 'registers an offence for case and when' do
49
+ inspect_source(cop,
50
+ ['case(a)',
51
+ 'when(0) then 1',
52
+ 'end'])
53
+ expect(cop.offences.map(&:line)).to eq([1, 2])
54
+ end
58
55
 
59
- it 'registers an offence for while and until' do
60
- inspect_source(ap,
61
- ['while(a)',
62
- ' b until(c)',
63
- 'end'])
64
- expect(ap.offences.map(&:line)).to eq([1, 2])
65
- end
66
- end
67
- end
56
+ it 'registers an offence for while and until' do
57
+ inspect_source(cop,
58
+ ['while(a)',
59
+ ' b until(c)',
60
+ 'end'])
61
+ expect(cop.offences.map(&:line)).to eq([1, 2])
68
62
  end
69
63
  end
@@ -2,60 +2,54 @@
2
2
 
3
3
  require 'spec_helper'
4
4
 
5
- module Rubocop
6
- module Cop
7
- module Style
8
- describe SpaceAfterMethodName do
9
- subject(:cop) { SpaceAfterMethodName.new }
10
-
11
- it 'registers an offence for def with space before the parenthesis' do
12
- inspect_source(cop,
13
- ['def func (x)',
14
- ' a',
15
- 'end'])
16
- expect(cop.offences).to have(1).item
17
- end
18
-
19
- it 'registers an offence for defs with space before the parenthesis' do
20
- inspect_source(cop,
21
- ['def self.func (x)',
22
- ' a',
23
- 'end'])
24
- expect(cop.offences).to have(1).item
25
- end
26
-
27
- it 'accepts a def without arguments' do
28
- inspect_source(cop,
29
- ['def func',
30
- ' a',
31
- 'end'])
32
- expect(cop.offences).to be_empty
33
- end
34
-
35
- it 'accepts a defs without arguments' do
36
- inspect_source(cop,
37
- ['def self.func',
38
- ' a',
39
- 'end'])
40
- expect(cop.offences).to be_empty
41
- end
42
-
43
- it 'accepts a def with arguments but no parentheses' do
44
- inspect_source(cop,
45
- ['def func x',
46
- ' a',
47
- 'end'])
48
- expect(cop.offences).to be_empty
49
- end
50
-
51
- it 'accepts a defs with arguments but no parentheses' do
52
- inspect_source(cop,
53
- ['def self.func x',
54
- ' a',
55
- 'end'])
56
- expect(cop.offences).to be_empty
57
- end
58
- end
59
- end
5
+ describe Rubocop::Cop::Style::SpaceAfterMethodName do
6
+ subject(:cop) { described_class.new }
7
+
8
+ it 'registers an offence for def with space before the parenthesis' do
9
+ inspect_source(cop,
10
+ ['def func (x)',
11
+ ' a',
12
+ 'end'])
13
+ expect(cop.offences).to have(1).item
14
+ end
15
+
16
+ it 'registers an offence for defs with space before the parenthesis' do
17
+ inspect_source(cop,
18
+ ['def self.func (x)',
19
+ ' a',
20
+ 'end'])
21
+ expect(cop.offences).to have(1).item
22
+ end
23
+
24
+ it 'accepts a def without arguments' do
25
+ inspect_source(cop,
26
+ ['def func',
27
+ ' a',
28
+ 'end'])
29
+ expect(cop.offences).to be_empty
30
+ end
31
+
32
+ it 'accepts a defs without arguments' do
33
+ inspect_source(cop,
34
+ ['def self.func',
35
+ ' a',
36
+ 'end'])
37
+ expect(cop.offences).to be_empty
38
+ end
39
+
40
+ it 'accepts a def with arguments but no parentheses' do
41
+ inspect_source(cop,
42
+ ['def func x',
43
+ ' a',
44
+ 'end'])
45
+ expect(cop.offences).to be_empty
46
+ end
47
+
48
+ it 'accepts a defs with arguments but no parentheses' do
49
+ inspect_source(cop,
50
+ ['def self.func x',
51
+ ' a',
52
+ 'end'])
53
+ expect(cop.offences).to be_empty
60
54
  end
61
55
  end
@@ -2,23 +2,17 @@
2
2
 
3
3
  require 'spec_helper'
4
4
 
5
- module Rubocop
6
- module Cop
7
- module Style
8
- describe SpaceAfterSemicolon do
9
- subject(:space) { SpaceAfterSemicolon.new }
5
+ describe Rubocop::Cop::Style::SpaceAfterSemicolon do
6
+ subject(:cop) { described_class.new }
10
7
 
11
- it 'registers an offence for semicolon without space after it' do
12
- inspect_source(space, ['x = 1;y = 2'])
13
- expect(space.messages).to eq(
14
- ['Space missing after semicolon.'])
15
- end
8
+ it 'registers an offence for semicolon without space after it' do
9
+ inspect_source(cop, ['x = 1;y = 2'])
10
+ expect(cop.messages).to eq(
11
+ ['Space missing after semicolon.'])
12
+ end
16
13
 
17
- it 'does not crash if semicolon is the last character of the file' do
18
- inspect_source(space, ['x = 1;'])
19
- expect(space.messages).to be_empty
20
- end
21
- end
22
- end
14
+ it 'does not crash if semicolon is the last character of the file' do
15
+ inspect_source(cop, ['x = 1;'])
16
+ expect(cop.messages).to be_empty
23
17
  end
24
18
  end