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,18 +2,12 @@
2
2
 
3
3
  require 'spec_helper'
4
4
 
5
- module Rubocop
6
- module Cop
7
- module Rails
8
- describe HasAndBelongsToMany do
9
- subject(:cop) { described_class.new }
5
+ describe Rubocop::Cop::Rails::HasAndBelongsToMany do
6
+ subject(:cop) { described_class.new }
10
7
 
11
- it 'registers an offence for has_and_belongs_to_many' do
12
- inspect_source(cop,
13
- ['has_and_belongs_to_many :groups'])
14
- expect(cop.offences.size).to eq(1)
15
- end
16
- end
17
- end
8
+ it 'registers an offence for has_and_belongs_to_many' do
9
+ inspect_source(cop,
10
+ ['has_and_belongs_to_many :groups'])
11
+ expect(cop.offences.size).to eq(1)
18
12
  end
19
13
  end
@@ -2,18 +2,12 @@
2
2
 
3
3
  require 'spec_helper'
4
4
 
5
- module Rubocop
6
- module Cop
7
- module Rails
8
- describe ReadAttribute do
9
- subject(:cop) { described_class.new }
5
+ describe Rubocop::Cop::Rails::ReadAttribute do
6
+ subject(:cop) { described_class.new }
10
7
 
11
- it 'registers an offence for read_attribute' do
12
- inspect_source(cop,
13
- ['res = read_attribute(:test)'])
14
- expect(cop.offences.size).to eq(1)
15
- end
16
- end
17
- end
8
+ it 'registers an offence for read_attribute' do
9
+ inspect_source(cop,
10
+ ['res = read_attribute(:test)'])
11
+ expect(cop.offences.size).to eq(1)
18
12
  end
19
13
  end
@@ -2,26 +2,20 @@
2
2
 
3
3
  require 'spec_helper'
4
4
 
5
- module Rubocop
6
- module Cop
7
- module Rails
8
- describe Validation do
9
- subject(:cop) { described_class.new }
5
+ describe Rubocop::Cop::Rails::Validation do
6
+ subject(:cop) { described_class.new }
10
7
 
11
- Validation::BLACKLIST.each do |validation|
12
- it "registers an offence for #{validation}" do
13
- inspect_source(cop,
14
- ["#{validation} :name"])
15
- expect(cop.offences.size).to eq(1)
16
- end
17
- end
18
-
19
- it 'accepts sexy validations' do
20
- inspect_source(cop,
21
- ['validates :name'])
22
- expect(cop.offences).to be_empty
23
- end
24
- end
8
+ described_class::BLACKLIST.each do |validation|
9
+ it "registers an offence for #{validation}" do
10
+ inspect_source(cop,
11
+ ["#{validation} :name"])
12
+ expect(cop.offences.size).to eq(1)
25
13
  end
26
14
  end
15
+
16
+ it 'accepts sexy validations' do
17
+ inspect_source(cop,
18
+ ['validates :name'])
19
+ expect(cop.offences).to be_empty
20
+ end
27
21
  end
@@ -2,169 +2,163 @@
2
2
 
3
3
  require 'spec_helper'
4
4
 
5
- module Rubocop
6
- module Cop
7
- module Style
8
- describe AccessControl do
9
- subject(:a) { AccessControl.new }
5
+ describe Rubocop::Cop::Style::AccessControl do
6
+ subject(:cop) { described_class.new }
10
7
 
11
- it 'registers an offence for misaligned private' do
12
- inspect_source(a,
13
- ['class Test',
14
- '',
15
- 'private',
16
- '',
17
- ' def test; end',
18
- 'end'])
19
- expect(a.offences.size).to eq(1)
20
- expect(a.messages)
21
- .to eq([format(AccessControl::INDENT_MSG, 'private')])
22
- end
8
+ it 'registers an offence for misaligned private' do
9
+ inspect_source(cop,
10
+ ['class Test',
11
+ '',
12
+ 'private',
13
+ '',
14
+ ' def test; end',
15
+ 'end'])
16
+ expect(cop.offences.size).to eq(1)
17
+ expect(cop.messages)
18
+ .to eq(['Indent private as deep as method definitions.'])
19
+ end
23
20
 
24
- it 'registers an offence for misaligned private in module' do
25
- inspect_source(a,
26
- ['module Test',
27
- '',
28
- 'private',
29
- '',
30
- ' def test; end',
31
- 'end'])
32
- expect(a.offences.size).to eq(1)
33
- expect(a.messages)
34
- .to eq([format(AccessControl::INDENT_MSG, 'private')])
35
- end
21
+ it 'registers an offence for misaligned private in module' do
22
+ inspect_source(cop,
23
+ ['module Test',
24
+ '',
25
+ 'private',
26
+ '',
27
+ ' def test; end',
28
+ 'end'])
29
+ expect(cop.offences.size).to eq(1)
30
+ expect(cop.messages)
31
+ .to eq(['Indent private as deep as method definitions.'])
32
+ end
36
33
 
37
- it 'registers an offence for misaligned private in singleton class' do
38
- inspect_source(a,
39
- ['class << self',
40
- '',
41
- 'private',
42
- '',
43
- ' def test; end',
44
- 'end'])
45
- expect(a.offences.size).to eq(1)
46
- expect(a.messages)
47
- .to eq([format(AccessControl::INDENT_MSG, 'private')])
48
- end
34
+ it 'registers an offence for misaligned private in singleton class' do
35
+ inspect_source(cop,
36
+ ['class << self',
37
+ '',
38
+ 'private',
39
+ '',
40
+ ' def test; end',
41
+ 'end'])
42
+ expect(cop.offences.size).to eq(1)
43
+ expect(cop.messages)
44
+ .to eq(['Indent private as deep as method definitions.'])
45
+ end
49
46
 
50
- it 'registers an offence for misaligned private in class ' +
51
- 'defined with Class.new' do
52
- inspect_source(a,
53
- ['Test = Class.new do',
54
- '',
55
- 'private',
56
- '',
57
- ' def test; end',
58
- 'end'])
59
- expect(a.offences.size).to eq(1)
60
- expect(a.messages)
61
- .to eq([format(AccessControl::INDENT_MSG, 'private')])
62
- end
47
+ it 'registers an offence for misaligned private in class ' +
48
+ 'defined with Class.new' do
49
+ inspect_source(cop,
50
+ ['Test = Class.new do',
51
+ '',
52
+ 'private',
53
+ '',
54
+ ' def test; end',
55
+ 'end'])
56
+ expect(cop.offences.size).to eq(1)
57
+ expect(cop.messages)
58
+ .to eq(['Indent private as deep as method definitions.'])
59
+ end
63
60
 
64
- it 'registers an offence for misaligned private in module ' +
65
- 'defined with Module.new' do
66
- inspect_source(a,
67
- ['Test = Module.new do',
68
- '',
69
- 'private',
70
- '',
71
- ' def test; end',
72
- 'end'])
73
- expect(a.offences.size).to eq(1)
74
- expect(a.messages)
75
- .to eq([format(AccessControl::INDENT_MSG, 'private')])
76
- end
61
+ it 'registers an offence for misaligned private in module ' +
62
+ 'defined with Module.new' do
63
+ inspect_source(cop,
64
+ ['Test = Module.new do',
65
+ '',
66
+ 'private',
67
+ '',
68
+ ' def test; end',
69
+ 'end'])
70
+ expect(cop.offences.size).to eq(1)
71
+ expect(cop.messages)
72
+ .to eq(['Indent private as deep as method definitions.'])
73
+ end
77
74
 
78
- it 'registers an offence for misaligned protected' do
79
- inspect_source(a,
80
- ['class Test',
81
- '',
82
- 'protected',
83
- '',
84
- ' def test; end',
85
- 'end'])
86
- expect(a.offences.size).to eq(1)
87
- expect(a.messages)
88
- .to eq([format(AccessControl::INDENT_MSG, 'protected')])
89
- end
75
+ it 'registers an offence for misaligned protected' do
76
+ inspect_source(cop,
77
+ ['class Test',
78
+ '',
79
+ 'protected',
80
+ '',
81
+ ' def test; end',
82
+ 'end'])
83
+ expect(cop.offences.size).to eq(1)
84
+ expect(cop.messages)
85
+ .to eq(['Indent protected as deep as method definitions.'])
86
+ end
90
87
 
91
- it 'accepts properly indented private' do
92
- inspect_source(a,
93
- ['class Test',
94
- '',
95
- ' private',
96
- '',
97
- ' def test; end',
98
- 'end'])
99
- expect(a.offences).to be_empty
100
- end
88
+ it 'accepts properly indented private' do
89
+ inspect_source(cop,
90
+ ['class Test',
91
+ '',
92
+ ' private',
93
+ '',
94
+ ' def test; end',
95
+ 'end'])
96
+ expect(cop.offences).to be_empty
97
+ end
101
98
 
102
- it 'accepts properly indented protected' do
103
- inspect_source(a,
104
- ['class Test',
105
- '',
106
- ' protected',
107
- '',
108
- ' def test; end',
109
- 'end'])
110
- expect(a.offences).to be_empty
111
- end
99
+ it 'accepts properly indented protected' do
100
+ inspect_source(cop,
101
+ ['class Test',
102
+ '',
103
+ ' protected',
104
+ '',
105
+ ' def test; end',
106
+ 'end'])
107
+ expect(cop.offences).to be_empty
108
+ end
112
109
 
113
- it 'handles properly nested classes' do
114
- inspect_source(a,
115
- ['class Test',
116
- '',
117
- ' class Nested',
118
- '',
119
- ' private',
120
- '',
121
- ' def a; end',
122
- ' end',
123
- '',
124
- ' protected',
125
- '',
126
- ' def test; end',
127
- 'end'])
128
- expect(a.offences.size).to eq(1)
129
- expect(a.messages)
130
- .to eq([format(AccessControl::INDENT_MSG, 'private')])
131
- end
110
+ it 'handles properly nested classes' do
111
+ inspect_source(cop,
112
+ ['class Test',
113
+ '',
114
+ ' class Nested',
115
+ '',
116
+ ' private',
117
+ '',
118
+ ' def a; end',
119
+ ' end',
120
+ '',
121
+ ' protected',
122
+ '',
123
+ ' def test; end',
124
+ 'end'])
125
+ expect(cop.offences.size).to eq(1)
126
+ expect(cop.messages)
127
+ .to eq(['Indent private as deep as method definitions.'])
128
+ end
132
129
 
133
- it 'requires blank line before private/protected' do
134
- inspect_source(a,
135
- ['class Test',
136
- ' protected',
137
- '',
138
- ' def test; end',
139
- 'end'])
140
- expect(a.offences.size).to eq(1)
141
- expect(a.messages)
142
- .to eq([format(AccessControl::BLANK_MSG, 'protected')])
143
- end
130
+ it 'requires blank line before private/protected' do
131
+ inspect_source(cop,
132
+ ['class Test',
133
+ ' protected',
134
+ '',
135
+ ' def test; end',
136
+ 'end'])
137
+ expect(cop.offences.size).to eq(1)
138
+ expect(cop.messages)
139
+ .to eq(['Keep a blank line before and after protected.'])
140
+ end
144
141
 
145
- it 'requires blank line after private/protected' do
146
- inspect_source(a,
147
- ['class Test',
148
- '',
149
- ' protected',
150
- ' def test; end',
151
- 'end'])
152
- expect(a.offences.size).to eq(1)
153
- expect(a.messages)
154
- .to eq([format(AccessControl::BLANK_MSG, 'protected')])
155
- end
142
+ it 'requires blank line after private/protected' do
143
+ inspect_source(cop,
144
+ ['class Test',
145
+ '',
146
+ ' protected',
147
+ ' def test; end',
148
+ 'end'])
149
+ expect(cop.offences.size).to eq(1)
150
+ expect(cop.messages)
151
+ .to eq(['Keep a blank line before and after protected.'])
152
+ end
156
153
 
157
- it 'recognizes blank lines with DOS style line endings' do
158
- inspect_source(a,
159
- ["class Test\r",
160
- "\r",
161
- " protected\r",
162
- "\r",
163
- " def test; end\r",
164
- "end\r"])
165
- expect(a.offences.size).to eq(0)
166
- end
167
- end
168
- end
154
+ it 'recognizes blank lines with DOS style line endings' do
155
+ inspect_source(cop,
156
+ ["class Test\r",
157
+ "\r",
158
+ " protected\r",
159
+ "\r",
160
+ " def test; end\r",
161
+ "end\r"])
162
+ expect(cop.offences.size).to eq(0)
169
163
  end
170
164
  end
@@ -2,46 +2,40 @@
2
2
 
3
3
  require 'spec_helper'
4
4
 
5
- module Rubocop
6
- module Cop
7
- module Style
8
- describe Alias do
9
- subject(:a) { Alias.new }
5
+ describe Rubocop::Cop::Style::Alias do
6
+ subject(:cop) { described_class.new }
10
7
 
11
- it 'registers an offence for alias with symbol args' do
12
- inspect_source(a,
13
- ['alias :ala :bala'])
14
- expect(a.offences.size).to eq(1)
15
- expect(a.messages)
16
- .to eq([Alias::MSG])
17
- end
8
+ it 'registers an offence for alias with symbol args' do
9
+ inspect_source(cop,
10
+ ['alias :ala :bala'])
11
+ expect(cop.offences.size).to eq(1)
12
+ expect(cop.messages)
13
+ .to eq(['Use alias_method instead of alias.'])
14
+ end
18
15
 
19
- it 'registers an offence for alias with bareword args' do
20
- inspect_source(a,
21
- ['alias ala bala'])
22
- expect(a.offences.size).to eq(1)
23
- expect(a.messages)
24
- .to eq([Alias::MSG])
25
- end
16
+ it 'registers an offence for alias with bareword args' do
17
+ inspect_source(cop,
18
+ ['alias ala bala'])
19
+ expect(cop.offences.size).to eq(1)
20
+ expect(cop.messages)
21
+ .to eq(['Use alias_method instead of alias.'])
22
+ end
26
23
 
27
- it 'does not register an offence for alias_method' do
28
- inspect_source(a,
29
- ['alias_method :ala, :bala'])
30
- expect(a.offences).to be_empty
31
- end
24
+ it 'does not register an offence for alias_method' do
25
+ inspect_source(cop,
26
+ ['alias_method :ala, :bala'])
27
+ expect(cop.offences).to be_empty
28
+ end
32
29
 
33
- it 'does not register an offence for :alias' do
34
- inspect_source(a,
35
- ['[:alias, :ala, :bala]'])
36
- expect(a.offences).to be_empty
37
- end
30
+ it 'does not register an offence for :alias' do
31
+ inspect_source(cop,
32
+ ['[:alias, :ala, :bala]'])
33
+ expect(cop.offences).to be_empty
34
+ end
38
35
 
39
- it 'does not register an offence for alias with gvars' do
40
- inspect_source(a,
41
- ['alias $ala $bala'])
42
- expect(a.offences).to be_empty
43
- end
44
- end
45
- end
36
+ it 'does not register an offence for alias with gvars' do
37
+ inspect_source(cop,
38
+ ['alias $ala $bala'])
39
+ expect(cop.offences).to be_empty
46
40
  end
47
41
  end