rubocop 0.18.1 → 0.19.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Potentially problematic release.
This version of rubocop might be problematic. Click here for more details.
- checksums.yaml +4 -4
- data/.travis.yml +1 -1
- data/CHANGELOG.md +65 -1
- data/Gemfile +0 -3
- data/LICENSE.txt +1 -1
- data/README.md +179 -77
- data/Rakefile +8 -0
- data/config/default.yml +151 -14
- data/config/enabled.yml +65 -8
- data/lib/rubocop.rb +19 -4
- data/lib/rubocop/cli.rb +2 -1
- data/lib/rubocop/comment_config.rb +97 -0
- data/lib/rubocop/config.rb +1 -1
- data/lib/rubocop/config_loader.rb +3 -2
- data/lib/rubocop/config_store.rb +6 -2
- data/lib/rubocop/cop/commissioner.rb +2 -2
- data/lib/rubocop/cop/cop.rb +22 -26
- data/lib/rubocop/cop/lint/ambiguous_operator.rb +2 -2
- data/lib/rubocop/cop/lint/ambiguous_regexp_literal.rb +1 -1
- data/lib/rubocop/cop/lint/assignment_in_condition.rb +1 -1
- data/lib/rubocop/cop/lint/block_alignment.rb +6 -6
- data/lib/rubocop/cop/lint/condition_position.rb +1 -1
- data/lib/rubocop/cop/lint/debugger.rb +1 -1
- data/lib/rubocop/cop/lint/deprecated_class_methods.rb +60 -0
- data/lib/rubocop/cop/lint/else_layout.rb +1 -1
- data/lib/rubocop/cop/lint/empty_ensure.rb +1 -1
- data/lib/rubocop/cop/lint/end_alignment.rb +14 -12
- data/lib/rubocop/cop/lint/end_in_method.rb +1 -1
- data/lib/rubocop/cop/lint/ensure_return.rb +1 -1
- data/lib/rubocop/cop/lint/eval.rb +1 -1
- data/lib/rubocop/cop/lint/handle_exceptions.rb +1 -1
- data/lib/rubocop/cop/lint/literal_in_condition.rb +13 -2
- data/lib/rubocop/cop/lint/literal_in_interpolation.rb +28 -0
- data/lib/rubocop/cop/lint/loop.rb +4 -4
- data/lib/rubocop/cop/lint/parentheses_as_grouped_expression.rb +1 -1
- data/lib/rubocop/cop/lint/require_parentheses.rb +6 -6
- data/lib/rubocop/cop/lint/rescue_exception.rb +1 -1
- data/lib/rubocop/cop/lint/shadowing_outer_local_variable.rb +2 -2
- data/lib/rubocop/cop/lint/string_conversion_in_interpolation.rb +30 -0
- data/lib/rubocop/cop/lint/syntax.rb +5 -5
- data/lib/rubocop/cop/lint/unreachable_code.rb +1 -1
- data/lib/rubocop/cop/lint/useless_assignment.rb +5 -5
- data/lib/rubocop/cop/lint/useless_comparison.rb +1 -1
- data/lib/rubocop/cop/lint/useless_setter_call.rb +1 -1
- data/lib/rubocop/cop/lint/void.rb +5 -5
- data/lib/rubocop/cop/mixin/autocorrect_alignment.rb +8 -5
- data/lib/rubocop/cop/mixin/code_length.rb +2 -2
- data/lib/rubocop/cop/mixin/configurable_enforced_style.rb +7 -7
- data/lib/rubocop/cop/mixin/configurable_max.rb +1 -1
- data/lib/rubocop/cop/mixin/configurable_naming.rb +1 -1
- data/lib/rubocop/cop/mixin/if_then_else.rb +1 -1
- data/lib/rubocop/cop/mixin/negative_conditional.rb +1 -1
- data/lib/rubocop/cop/mixin/parser_diagnostic.rb +2 -2
- data/lib/rubocop/cop/mixin/space_after_punctuation.rb +3 -2
- data/lib/rubocop/cop/mixin/space_inside.rb +1 -1
- data/lib/rubocop/cop/mixin/statement_modifier.rb +1 -0
- data/lib/rubocop/cop/mixin/string_help.rb +4 -4
- data/lib/rubocop/cop/{offence.rb → offense.rb} +7 -7
- data/lib/rubocop/cop/rails/action_filter.rb +73 -0
- data/lib/rubocop/cop/rails/default_scope.rb +1 -1
- data/lib/rubocop/cop/rails/has_and_belongs_to_many.rb +1 -1
- data/lib/rubocop/cop/rails/output.rb +1 -10
- data/lib/rubocop/cop/rails/read_attribute.rb +1 -1
- data/lib/rubocop/cop/rails/scope_args.rb +33 -0
- data/lib/rubocop/cop/rails/validation.rb +1 -1
- data/lib/rubocop/cop/style/access_modifier_indentation.rb +1 -1
- data/lib/rubocop/cop/style/accessor_method_name.rb +2 -2
- data/lib/rubocop/cop/style/alias.rb +2 -2
- data/lib/rubocop/cop/style/align_array.rb +1 -1
- data/lib/rubocop/cop/style/align_hash.rb +29 -2
- data/lib/rubocop/cop/style/align_parameters.rb +16 -2
- data/lib/rubocop/cop/style/and_or.rb +2 -2
- data/lib/rubocop/cop/style/ascii_comments.rb +1 -1
- data/lib/rubocop/cop/style/ascii_identifiers.rb +1 -1
- data/lib/rubocop/cop/style/attr.rb +1 -1
- data/lib/rubocop/cop/style/begin_block.rb +1 -1
- data/lib/rubocop/cop/style/block_comments.rb +1 -1
- data/lib/rubocop/cop/style/block_nesting.rb +1 -1
- data/lib/rubocop/cop/style/blocks.rb +2 -2
- data/lib/rubocop/cop/style/braces_around_hash_parameters.rb +2 -2
- data/lib/rubocop/cop/style/case_equality.rb +1 -1
- data/lib/rubocop/cop/style/case_indentation.rb +2 -2
- data/lib/rubocop/cop/style/character_literal.rb +2 -2
- data/lib/rubocop/cop/style/class_and_module_camel_case.rb +1 -1
- data/lib/rubocop/cop/style/class_and_module_children.rb +69 -0
- data/lib/rubocop/cop/style/class_methods.rb +1 -1
- data/lib/rubocop/cop/style/class_vars.rb +3 -3
- data/lib/rubocop/cop/style/collection_methods.rb +4 -4
- data/lib/rubocop/cop/style/colon_method_call.rb +1 -1
- data/lib/rubocop/cop/style/comment_annotation.rb +1 -1
- data/lib/rubocop/cop/style/constant_name.rb +1 -1
- data/lib/rubocop/cop/style/cyclomatic_complexity.rb +2 -2
- data/lib/rubocop/cop/style/def_parentheses.rb +2 -2
- data/lib/rubocop/cop/style/documentation.rb +1 -1
- data/lib/rubocop/cop/style/dot_position.rb +10 -11
- data/lib/rubocop/cop/style/double_negation.rb +40 -0
- data/lib/rubocop/cop/style/empty_line_between_defs.rb +8 -1
- data/lib/rubocop/cop/style/empty_lines.rb +3 -2
- data/lib/rubocop/cop/style/empty_lines_around_access_modifier.rb +1 -1
- data/lib/rubocop/cop/style/empty_lines_around_body.rb +1 -1
- data/lib/rubocop/cop/style/empty_literal.rb +3 -3
- data/lib/rubocop/cop/style/encoding.rb +1 -1
- data/lib/rubocop/cop/style/end_block.rb +1 -1
- data/lib/rubocop/cop/style/end_of_line.rb +2 -2
- data/lib/rubocop/cop/style/even_odd.rb +2 -2
- data/lib/rubocop/cop/style/favor_join.rb +1 -1
- data/lib/rubocop/cop/style/file_name.rb +29 -0
- data/lib/rubocop/cop/style/final_newline.rb +1 -1
- data/lib/rubocop/cop/style/flip_flop.rb +2 -2
- data/lib/rubocop/cop/style/for.rb +2 -2
- data/lib/rubocop/cop/style/format_string.rb +66 -0
- data/lib/rubocop/cop/style/global_vars.rb +2 -2
- data/lib/rubocop/cop/style/hash_methods.rb +1 -1
- data/lib/rubocop/cop/style/hash_syntax.rb +3 -3
- data/lib/rubocop/cop/style/if_unless_modifier.rb +2 -1
- data/lib/rubocop/cop/style/indent_array.rb +41 -0
- data/lib/rubocop/cop/style/indent_hash.rb +119 -0
- data/lib/rubocop/cop/style/indentation_consistency.rb +3 -11
- data/lib/rubocop/cop/style/indentation_width.rb +44 -23
- data/lib/rubocop/cop/style/lambda.rb +2 -2
- data/lib/rubocop/cop/style/lambda_call.rb +3 -3
- data/lib/rubocop/cop/style/leading_comment_space.rb +1 -1
- data/lib/rubocop/cop/style/line_end_concatenation.rb +7 -3
- data/lib/rubocop/cop/style/line_length.rb +2 -2
- data/lib/rubocop/cop/style/method_call_parentheses.rb +2 -2
- data/lib/rubocop/cop/style/method_called_on_do_end_block.rb +2 -2
- data/lib/rubocop/cop/style/method_def_parentheses.rb +9 -7
- data/lib/rubocop/cop/style/module_function.rb +1 -1
- data/lib/rubocop/cop/style/multiline_block_chain.rb +1 -1
- data/lib/rubocop/cop/style/multiline_ternary_operator.rb +1 -1
- data/lib/rubocop/cop/style/nested_ternary_operator.rb +2 -2
- data/lib/rubocop/cop/style/nil_comparison.rb +1 -1
- data/lib/rubocop/cop/style/not.rb +1 -1
- data/lib/rubocop/cop/style/numeric_literals.rb +5 -5
- data/lib/rubocop/cop/style/op_method.rb +2 -2
- data/lib/rubocop/cop/style/parameter_lists.rb +1 -1
- data/lib/rubocop/cop/style/parentheses_around_condition.rb +5 -4
- data/lib/rubocop/cop/style/percent_literal_delimiters.rb +143 -0
- data/lib/rubocop/cop/style/perl_backrefs.rb +1 -1
- data/lib/rubocop/cop/style/predicate_name.rb +1 -1
- data/lib/rubocop/cop/style/proc.rb +1 -1
- data/lib/rubocop/cop/style/raise_args.rb +2 -2
- data/lib/rubocop/cop/style/redundant_begin.rb +1 -1
- data/lib/rubocop/cop/style/redundant_exception.rb +1 -1
- data/lib/rubocop/cop/style/redundant_return.rb +1 -1
- data/lib/rubocop/cop/style/redundant_self.rb +2 -2
- data/lib/rubocop/cop/style/regexp_literal.rb +45 -19
- data/lib/rubocop/cop/style/rescue_modifier.rb +1 -1
- data/lib/rubocop/cop/style/self_assignment.rb +73 -0
- data/lib/rubocop/cop/style/semicolon.rb +12 -8
- data/lib/rubocop/cop/style/signal_exception.rb +2 -2
- data/lib/rubocop/cop/style/single_line_block_params.rb +1 -1
- data/lib/rubocop/cop/style/single_line_methods.rb +38 -1
- data/lib/rubocop/cop/style/space_after_colon.rb +3 -3
- data/lib/rubocop/cop/style/space_after_comma.rb +1 -1
- data/lib/rubocop/cop/style/space_after_control_keyword.rb +1 -1
- data/lib/rubocop/cop/style/space_after_method_name.rb +11 -3
- data/lib/rubocop/cop/style/space_after_not.rb +1 -1
- data/lib/rubocop/cop/style/space_after_semicolon.rb +1 -1
- data/lib/rubocop/cop/style/space_around_equals_in_parameter_default.rb +41 -6
- data/lib/rubocop/cop/style/space_around_operators.rb +4 -4
- data/lib/rubocop/cop/style/space_before_block_braces.rb +63 -0
- data/lib/rubocop/cop/style/space_before_modifier_keyword.rb +1 -1
- data/lib/rubocop/cop/style/{space_around_block_braces.rb → space_inside_block_braces.rb} +15 -24
- data/lib/rubocop/cop/style/space_inside_hash_literal_braces.rb +14 -7
- data/lib/rubocop/cop/style/special_global_vars.rb +1 -1
- data/lib/rubocop/cop/style/string_literals.rb +1 -1
- data/lib/rubocop/cop/style/symbol_array.rb +1 -1
- data/lib/rubocop/cop/style/tab.rb +1 -1
- data/lib/rubocop/cop/style/trailing_blank_lines.rb +2 -2
- data/lib/rubocop/cop/style/trailing_comma.rb +4 -4
- data/lib/rubocop/cop/style/trailing_whitespace.rb +1 -1
- data/lib/rubocop/cop/style/trivial_accessors.rb +2 -2
- data/lib/rubocop/cop/style/unless_else.rb +1 -1
- data/lib/rubocop/cop/style/variable_interpolation.rb +1 -1
- data/lib/rubocop/cop/style/when_then.rb +1 -1
- data/lib/rubocop/cop/style/while_until_do.rb +1 -1
- data/lib/rubocop/cop/style/while_until_modifier.rb +2 -1
- data/lib/rubocop/cop/style/word_array.rb +2 -2
- data/lib/rubocop/cop/team.rb +24 -7
- data/lib/rubocop/cop/util.rb +3 -3
- data/lib/rubocop/cop/variable_inspector.rb +25 -13
- data/lib/rubocop/cop/variable_inspector/assignment.rb +1 -1
- data/lib/rubocop/cop/variable_inspector/reference.rb +1 -1
- data/lib/rubocop/cop/variable_inspector/scope.rb +1 -1
- data/lib/rubocop/cop/variable_inspector/variable.rb +2 -2
- data/lib/rubocop/cop/variable_inspector/variable_table.rb +1 -1
- data/lib/rubocop/file_inspector.rb +12 -13
- data/lib/rubocop/formatter/base_formatter.rb +4 -4
- data/lib/rubocop/formatter/clang_style_formatter.rb +2 -2
- data/lib/rubocop/formatter/disabled_config_formatter.rb +12 -12
- data/lib/rubocop/formatter/emacs_style_formatter.rb +3 -2
- data/lib/rubocop/formatter/file_list_formatter.rb +4 -4
- data/lib/rubocop/formatter/formatter_set.rb +2 -1
- data/lib/rubocop/formatter/fuubar_style_formatter.rb +76 -0
- data/lib/rubocop/formatter/json_formatter.rb +17 -16
- data/lib/rubocop/formatter/offense_count_formatter.rb +54 -0
- data/lib/rubocop/formatter/progress_formatter.rb +16 -16
- data/lib/rubocop/formatter/simple_text_formatter.rb +25 -25
- data/lib/rubocop/options.rb +8 -7
- data/lib/rubocop/processed_source.rb +3 -2
- data/lib/rubocop/source_parser.rb +1 -59
- data/lib/rubocop/version.rb +3 -3
- data/relnotes/0.19.0.md +70 -0
- data/rubocop-todo.yml +6 -6
- data/rubocop.gemspec +2 -1
- data/spec/rubocop/cli_spec.rb +431 -268
- data/spec/rubocop/comment_config_spec.rb +103 -0
- data/spec/rubocop/config_loader_spec.rb +4 -4
- data/spec/rubocop/cop/commissioner_spec.rb +7 -7
- data/spec/rubocop/cop/cop_spec.rb +17 -17
- data/spec/rubocop/cop/lint/ambiguous_operator_spec.rb +16 -16
- data/spec/rubocop/cop/lint/ambiguous_regexp_literal_spec.rb +5 -5
- data/spec/rubocop/cop/lint/assignment_in_condition_spec.rb +19 -19
- data/spec/rubocop/cop/lint/block_alignment_spec.rb +52 -52
- data/spec/rubocop/cop/lint/condition_position_spec.rb +7 -7
- data/spec/rubocop/cop/lint/debugger_spec.rb +10 -10
- data/spec/rubocop/cop/lint/deprecated_class_methods_spec.rb +33 -0
- data/spec/rubocop/cop/lint/else_layout_spec.rb +7 -7
- data/spec/rubocop/cop/lint/empty_ensure_spec.rb +4 -4
- data/spec/rubocop/cop/lint/end_alignment_spec.rb +33 -34
- data/spec/rubocop/cop/lint/end_in_method_spec.rb +5 -5
- data/spec/rubocop/cop/lint/ensure_return_spec.rb +4 -4
- data/spec/rubocop/cop/lint/eval_spec.rb +8 -8
- data/spec/rubocop/cop/lint/handle_exceptions_spec.rb +4 -4
- data/spec/rubocop/cop/lint/invalid_character_literal_spec.rb +3 -3
- data/spec/rubocop/cop/lint/literal_in_condition_spec.rb +65 -10
- data/spec/rubocop/cop/lint/literal_in_interpolation_spec.rb +21 -0
- data/spec/rubocop/cop/lint/loop_spec.rb +6 -6
- data/spec/rubocop/cop/lint/parentheses_as_grouped_expression_spec.rb +14 -14
- data/spec/rubocop/cop/lint/require_parentheses_spec.rb +15 -15
- data/spec/rubocop/cop/lint/rescue_exception_spec.rb +21 -21
- data/spec/rubocop/cop/lint/shadowing_outer_local_variable_spec.rb +16 -16
- data/spec/rubocop/cop/lint/string_conversion_in_interpolation_spec.rb +27 -0
- data/spec/rubocop/cop/lint/syntax_spec.rb +11 -11
- data/spec/rubocop/cop/lint/unreachable_code_spec.rb +8 -8
- data/spec/rubocop/cop/lint/useless_assignment_spec.rb +207 -169
- data/spec/rubocop/cop/lint/useless_comparison_spec.rb +5 -5
- data/spec/rubocop/cop/lint/useless_else_without_rescue_spec.rb +4 -4
- data/spec/rubocop/cop/lint/useless_setter_call_spec.rb +17 -17
- data/spec/rubocop/cop/lint/void_spec.rb +8 -8
- data/spec/rubocop/cop/{offence_spec.rb → offense_spec.rb} +17 -17
- data/spec/rubocop/cop/rails/action_filter_spec.rb +69 -0
- data/spec/rubocop/cop/rails/default_scope_spec.rb +9 -9
- data/spec/rubocop/cop/rails/has_and_belongs_to_many_spec.rb +2 -2
- data/spec/rubocop/cop/rails/output_spec.rb +8 -18
- data/spec/rubocop/cop/rails/read_attribute_spec.rb +2 -2
- data/spec/rubocop/cop/rails/scope_args_spec.rb +25 -0
- data/spec/rubocop/cop/rails/validation_spec.rb +3 -3
- data/spec/rubocop/cop/style/access_modifier_indentation_spec.rb +38 -38
- data/spec/rubocop/cop/style/accessor_method_name_spec.rb +14 -14
- data/spec/rubocop/cop/style/alias_spec.rb +11 -11
- data/spec/rubocop/cop/style/align_array_spec.rb +23 -7
- data/spec/rubocop/cop/style/align_hash_spec.rb +111 -30
- data/spec/rubocop/cop/style/align_parameters_spec.rb +260 -187
- data/spec/rubocop/cop/style/and_or_spec.rb +6 -6
- data/spec/rubocop/cop/style/ascii_comments_spec.rb +3 -3
- data/spec/rubocop/cop/style/ascii_identifiers_spec.rb +5 -5
- data/spec/rubocop/cop/style/attr_spec.rb +2 -2
- data/spec/rubocop/cop/style/begin_block_spec.rb +2 -2
- data/spec/rubocop/cop/style/block_comments_spec.rb +3 -3
- data/spec/rubocop/cop/style/block_nesting_spec.rb +26 -26
- data/spec/rubocop/cop/style/blocks_spec.rb +8 -8
- data/spec/rubocop/cop/style/braces_around_hash_parameters_spec.rb +8 -8
- data/spec/rubocop/cop/style/case_equality_spec.rb +2 -2
- data/spec/rubocop/cop/style/case_indentation_spec.rb +21 -21
- data/spec/rubocop/cop/style/character_literal_spec.rb +6 -6
- data/spec/rubocop/cop/style/class_and_module_camel_case_spec.rb +4 -4
- data/spec/rubocop/cop/style/class_and_module_children_spec.rb +129 -0
- data/spec/rubocop/cop/style/class_length_spec.rb +9 -9
- data/spec/rubocop/cop/style/class_methods_spec.rb +8 -8
- data/spec/rubocop/cop/style/class_vars_spec.rb +4 -4
- data/spec/rubocop/cop/style/collection_methods_spec.rb +6 -6
- data/spec/rubocop/cop/style/colon_method_call_spec.rb +16 -16
- data/spec/rubocop/cop/style/comment_annotation_spec.rb +16 -16
- data/spec/rubocop/cop/style/constant_name_spec.rb +12 -12
- data/spec/rubocop/cop/style/cyclomatic_complexity_spec.rb +16 -16
- data/spec/rubocop/cop/style/def_with_parentheses_spec.rb +6 -6
- data/spec/rubocop/cop/style/documentation_spec.rb +14 -14
- data/spec/rubocop/cop/style/dot_position_spec.rb +23 -26
- data/spec/rubocop/cop/style/double_negation_spec.rb +22 -0
- data/spec/rubocop/cop/style/empty_line_between_defs_spec.rb +22 -14
- data/spec/rubocop/cop/style/empty_lines_around_access_modifier_spec.rb +4 -4
- data/spec/rubocop/cop/style/empty_lines_around_body_spec.rb +20 -20
- data/spec/rubocop/cop/style/empty_lines_spec.rb +17 -6
- data/spec/rubocop/cop/style/empty_literal_spec.rb +20 -20
- data/spec/rubocop/cop/style/encoding_spec.rb +5 -5
- data/spec/rubocop/cop/style/end_block_spec.rb +2 -2
- data/spec/rubocop/cop/style/end_of_line_spec.rb +4 -4
- data/spec/rubocop/cop/style/even_odd_spec.rb +18 -18
- data/spec/rubocop/cop/style/favor_join_spec.rb +7 -7
- data/spec/rubocop/cop/style/favor_unless_over_negated_if_spec.rb +7 -7
- data/spec/rubocop/cop/style/favor_until_over_negated_while_spec.rb +3 -3
- data/spec/rubocop/cop/style/file_name_spec.rb +71 -0
- data/spec/rubocop/cop/style/final_newline_spec.rb +4 -4
- data/spec/rubocop/cop/style/flip_flop_spec.rb +4 -4
- data/spec/rubocop/cop/style/for_spec.rb +13 -13
- data/spec/rubocop/cop/style/format_string_spec.rb +136 -0
- data/spec/rubocop/cop/style/global_vars_spec.rb +7 -7
- data/spec/rubocop/cop/style/hash_methods_spec.rb +6 -6
- data/spec/rubocop/cop/style/hash_syntax_spec.rb +11 -11
- data/spec/rubocop/cop/style/if_unless_modifier_spec.rb +29 -11
- data/spec/rubocop/cop/style/if_with_semicolon_spec.rb +1 -1
- data/spec/rubocop/cop/style/indent_array_spec.rb +136 -0
- data/spec/rubocop/cop/style/indent_hash_spec.rb +238 -0
- data/spec/rubocop/cop/style/indentation_consistency_spec.rb +69 -49
- data/spec/rubocop/cop/style/indentation_width_spec.rb +264 -128
- data/spec/rubocop/cop/style/lambda_call_spec.rb +14 -14
- data/spec/rubocop/cop/style/lambda_spec.rb +7 -7
- data/spec/rubocop/cop/style/leading_comment_space_spec.rb +15 -15
- data/spec/rubocop/cop/style/line_end_concatenation_spec.rb +11 -4
- data/spec/rubocop/cop/style/line_length_spec.rb +5 -5
- data/spec/rubocop/cop/style/method_call_parentheses_spec.rb +5 -5
- data/spec/rubocop/cop/style/method_called_on_do_end_block_spec.rb +9 -9
- data/spec/rubocop/cop/style/method_def_parentheses_spec.rb +19 -19
- data/spec/rubocop/cop/style/method_length_spec.rb +17 -17
- data/spec/rubocop/cop/style/method_name_spec.rb +21 -21
- data/spec/rubocop/cop/style/module_function_spec.rb +3 -3
- data/spec/rubocop/cop/style/multiline_block_chain_spec.rb +13 -13
- data/spec/rubocop/cop/style/multiline_if_then_spec.rb +10 -10
- data/spec/rubocop/cop/style/multiline_ternary_operator_spec.rb +3 -3
- data/spec/rubocop/cop/style/nested_ternary_operator_spec.rb +3 -3
- data/spec/rubocop/cop/style/nil_comparison_spec.rb +7 -7
- data/spec/rubocop/cop/style/not_spec.rb +6 -11
- data/spec/rubocop/cop/style/numeric_literals_spec.rb +8 -8
- data/spec/rubocop/cop/style/one_line_conditional_spec.rb +1 -1
- data/spec/rubocop/cop/style/op_method_spec.rb +13 -13
- data/spec/rubocop/cop/style/parameter_lists_spec.rb +6 -6
- data/spec/rubocop/cop/style/parentheses_around_condition_spec.rb +11 -10
- data/spec/rubocop/cop/style/percent_literal_delimiters_spec.rb +250 -0
- data/spec/rubocop/cop/style/perl_backrefs_spec.rb +2 -2
- data/spec/rubocop/cop/style/predicate_name_spec.rb +3 -3
- data/spec/rubocop/cop/style/proc_spec.rb +4 -4
- data/spec/rubocop/cop/style/raise_args_spec.rb +20 -20
- data/spec/rubocop/cop/style/redundant_begin_spec.rb +6 -6
- data/spec/rubocop/cop/style/redundant_exception_spec.rb +6 -6
- data/spec/rubocop/cop/style/redundant_return_spec.rb +22 -22
- data/spec/rubocop/cop/style/redundant_self_spec.rb +14 -14
- data/spec/rubocop/cop/style/regexp_literal_spec.rb +88 -67
- data/spec/rubocop/cop/style/rescue_modifier_spec.rb +17 -17
- data/spec/rubocop/cop/style/self_assignment_spec.rb +43 -0
- data/spec/rubocop/cop/style/semicolon_spec.rb +31 -17
- data/spec/rubocop/cop/style/signal_exception_spec.rb +29 -29
- data/spec/rubocop/cop/style/single_line_block_params_spec.rb +6 -6
- data/spec/rubocop/cop/style/single_line_methods_spec.rb +44 -6
- data/spec/rubocop/cop/style/space_after_colon_spec.rb +1 -1
- data/spec/rubocop/cop/style/space_after_comma_spec.rb +3 -3
- data/spec/rubocop/cop/style/space_after_control_keyword_spec.rb +12 -12
- data/spec/rubocop/cop/style/space_after_method_name_spec.rb +8 -8
- data/spec/rubocop/cop/style/space_after_not_spec.rb +3 -3
- data/spec/rubocop/cop/style/space_after_semicolon_spec.rb +1 -1
- data/spec/rubocop/cop/style/space_around_equals_in_parameter_default_spec.rb +63 -21
- data/spec/rubocop/cop/style/space_around_operators_spec.rb +24 -24
- data/spec/rubocop/cop/style/space_before_block_braces_spec.rb +72 -0
- data/spec/rubocop/cop/style/space_before_modifier_keyword_spec.rb +4 -4
- data/spec/rubocop/cop/style/{space_around_block_braces_spec.rb → space_inside_block_braces_spec.rb} +39 -41
- data/spec/rubocop/cop/style/space_inside_brackets_spec.rb +1 -1
- data/spec/rubocop/cop/style/space_inside_hash_literal_braces_spec.rb +15 -15
- data/spec/rubocop/cop/style/space_inside_parens_spec.rb +1 -1
- data/spec/rubocop/cop/style/special_global_vars_spec.rb +10 -10
- data/spec/rubocop/cop/style/string_literals_spec.rb +31 -31
- data/spec/rubocop/cop/style/symbol_array_spec.rb +9 -9
- data/spec/rubocop/cop/style/tab_spec.rb +3 -3
- data/spec/rubocop/cop/style/trailing_blank_lines_spec.rb +3 -3
- data/spec/rubocop/cop/style/trailing_comma_spec.rb +32 -32
- data/spec/rubocop/cop/style/trailing_whitespace_spec.rb +5 -5
- data/spec/rubocop/cop/style/trivial_accessors_spec.rb +39 -39
- data/spec/rubocop/cop/style/unless_else_spec.rb +1 -1
- data/spec/rubocop/cop/style/variable_interpolation_spec.rb +12 -12
- data/spec/rubocop/cop/style/variable_name_spec.rb +21 -21
- data/spec/rubocop/cop/style/when_then_spec.rb +1 -1
- data/spec/rubocop/cop/style/while_until_do_spec.rb +8 -8
- data/spec/rubocop/cop/style/while_until_modifier_spec.rb +25 -7
- data/spec/rubocop/cop/style/word_array_spec.rb +23 -23
- data/spec/rubocop/cop/team_spec.rb +14 -14
- data/spec/rubocop/file_inspector_spec.rb +14 -12
- data/spec/rubocop/formatter/base_formatter_spec.rb +19 -19
- data/spec/rubocop/formatter/clang_style_formatter_spec.rb +14 -14
- data/spec/rubocop/formatter/disabled_config_formatter_spec.rb +7 -7
- data/spec/rubocop/formatter/emacs_style_formatter_spec.rb +7 -7
- data/spec/rubocop/formatter/file_list_formatter_spec.rb +4 -4
- data/spec/rubocop/formatter/fuubar_style_formatter_spec.rb +129 -0
- data/spec/rubocop/formatter/json_formatter_spec.rb +23 -19
- data/spec/rubocop/formatter/offense_count_formatter_spec.rb +77 -0
- data/spec/rubocop/formatter/progress_formatter_spec.rb +27 -27
- data/spec/rubocop/formatter/simple_text_formatter_spec.rb +16 -16
- data/spec/rubocop/options_spec.rb +7 -8
- data/spec/rubocop/source_parser_spec.rb +0 -54
- data/spec/spec_helper.rb +11 -7
- data/spec/support/file_helper.rb +1 -1
- data/spec/support/mri_syntax_checker.rb +4 -4
- data/spec/support/shared_examples.rb +6 -6
- data/spec/support/statement_modifier_helper.rb +3 -3
- metadata +76 -16
- data/lib/rubocop/cop/style/favor_sprintf.rb +0 -26
- data/lib/rubocop/formatter/offence_count_formatter.rb +0 -49
- data/spec/rubocop/cop/style/favor_sprintf_spec.rb +0 -47
- data/spec/rubocop/formatter/offence_count_formatter_spec.rb +0 -52
@@ -5,9 +5,9 @@ require 'spec_helper'
|
|
5
5
|
describe Rubocop::Cop::Style::EndBlock do
|
6
6
|
subject(:cop) { described_class.new }
|
7
7
|
|
8
|
-
it 'reports an
|
8
|
+
it 'reports an offense for an END block' do
|
9
9
|
src = ['END { test }']
|
10
10
|
inspect_source(cop, src)
|
11
|
-
expect(cop.
|
11
|
+
expect(cop.offenses.size).to eq(1)
|
12
12
|
end
|
13
13
|
end
|
@@ -6,7 +6,7 @@ require 'tempfile'
|
|
6
6
|
describe Rubocop::Cop::Style::EndOfLine do
|
7
7
|
subject(:cop) { described_class.new }
|
8
8
|
|
9
|
-
it 'registers an
|
9
|
+
it 'registers an offense for CR+LF' do
|
10
10
|
inspect_source_file(cop, ['x=0', '', "y=1\r"])
|
11
11
|
expect(cop.messages).to eq(['Carriage return character detected.'])
|
12
12
|
end
|
@@ -16,13 +16,13 @@ describe Rubocop::Cop::Style::EndOfLine do
|
|
16
16
|
expect(cop.highlights).to eq(["y=1\r"])
|
17
17
|
end
|
18
18
|
|
19
|
-
it 'registers an
|
19
|
+
it 'registers an offense for CR at end of file' do
|
20
20
|
inspect_source_file(cop, ["x=0\r"])
|
21
21
|
expect(cop.messages).to eq(['Carriage return character detected.'])
|
22
22
|
end
|
23
23
|
|
24
24
|
context 'when there are many lines ending with CR+LF' do
|
25
|
-
it 'registers only one
|
25
|
+
it 'registers only one offense' do
|
26
26
|
inspect_source_file(cop, ['x=0', '', 'y=1'].join("\r\n"))
|
27
27
|
expect(cop.messages.size).to eq(1)
|
28
28
|
end
|
@@ -41,7 +41,7 @@ describe Rubocop::Cop::Style::EndOfLine do
|
|
41
41
|
'class Epd::ReportsController < EpdAreaController',
|
42
42
|
" 'terecht bij uw ROM-coördinator.'",
|
43
43
|
'end'].join("\n"))
|
44
|
-
expect(cop.
|
44
|
+
expect(cop.offenses).to be_empty
|
45
45
|
end
|
46
46
|
end
|
47
47
|
end
|
@@ -5,71 +5,71 @@ require 'spec_helper'
|
|
5
5
|
describe Rubocop::Cop::Style::EvenOdd do
|
6
6
|
subject(:cop) { described_class.new }
|
7
7
|
|
8
|
-
it 'registers an
|
8
|
+
it 'registers an offense for x % 2 == 0' do
|
9
9
|
inspect_source(cop,
|
10
10
|
['x % 2 == 0'])
|
11
|
-
expect(cop.
|
11
|
+
expect(cop.offenses.size).to eq(1)
|
12
12
|
expect(cop.messages).to eq(['Use Fixnum.even?'])
|
13
13
|
end
|
14
14
|
|
15
|
-
it 'registers an
|
15
|
+
it 'registers an offense for x % 2 != 0' do
|
16
16
|
inspect_source(cop,
|
17
17
|
['x % 2 != 0'])
|
18
|
-
expect(cop.
|
18
|
+
expect(cop.offenses.size).to eq(1)
|
19
19
|
expect(cop.messages).to eq(['Use Fixnum.odd?'])
|
20
20
|
end
|
21
21
|
|
22
|
-
it 'registers an
|
22
|
+
it 'registers an offense for (x % 2) == 0' do
|
23
23
|
inspect_source(cop,
|
24
24
|
['(x % 2) == 0'])
|
25
|
-
expect(cop.
|
25
|
+
expect(cop.offenses.size).to eq(1)
|
26
26
|
expect(cop.messages).to eq(['Use Fixnum.even?'])
|
27
27
|
end
|
28
28
|
|
29
|
-
it 'registers an
|
29
|
+
it 'registers an offense for (x % 2) != 0' do
|
30
30
|
inspect_source(cop,
|
31
31
|
['(x % 2) != 0'])
|
32
|
-
expect(cop.
|
32
|
+
expect(cop.offenses.size).to eq(1)
|
33
33
|
expect(cop.messages).to eq(['Use Fixnum.odd?'])
|
34
34
|
end
|
35
35
|
|
36
|
-
it 'registers an
|
36
|
+
it 'registers an offense for x % 2 == 1' do
|
37
37
|
inspect_source(cop,
|
38
38
|
['x % 2 == 1'])
|
39
|
-
expect(cop.
|
39
|
+
expect(cop.offenses.size).to eq(1)
|
40
40
|
expect(cop.messages).to eq(['Use Fixnum.odd?'])
|
41
41
|
end
|
42
42
|
|
43
|
-
it 'registers an
|
43
|
+
it 'registers an offense for x % 2 != 1' do
|
44
44
|
inspect_source(cop,
|
45
45
|
['x % 2 != 1'])
|
46
|
-
expect(cop.
|
46
|
+
expect(cop.offenses.size).to eq(1)
|
47
47
|
expect(cop.messages).to eq(['Use Fixnum.even?'])
|
48
48
|
end
|
49
49
|
|
50
|
-
it 'registers an
|
50
|
+
it 'registers an offense for (x % 2) == 1' do
|
51
51
|
inspect_source(cop,
|
52
52
|
['(x % 2) == 1'])
|
53
|
-
expect(cop.
|
53
|
+
expect(cop.offenses.size).to eq(1)
|
54
54
|
expect(cop.messages).to eq(['Use Fixnum.odd?'])
|
55
55
|
end
|
56
56
|
|
57
|
-
it 'registers an
|
57
|
+
it 'registers an offense for (x % 2) != 1' do
|
58
58
|
inspect_source(cop,
|
59
59
|
['(x % 2) != 1'])
|
60
|
-
expect(cop.
|
60
|
+
expect(cop.offenses.size).to eq(1)
|
61
61
|
expect(cop.messages).to eq(['Use Fixnum.even?'])
|
62
62
|
end
|
63
63
|
|
64
64
|
it 'accepts x % 3 == 0' do
|
65
65
|
inspect_source(cop,
|
66
66
|
['x % 3 == 0'])
|
67
|
-
expect(cop.
|
67
|
+
expect(cop.offenses).to be_empty
|
68
68
|
end
|
69
69
|
|
70
70
|
it 'accepts x % 3 != 0' do
|
71
71
|
inspect_source(cop,
|
72
72
|
['x % 3 != 0'])
|
73
|
-
expect(cop.
|
73
|
+
expect(cop.offenses).to be_empty
|
74
74
|
end
|
75
75
|
end
|
@@ -5,27 +5,27 @@ require 'spec_helper'
|
|
5
5
|
describe Rubocop::Cop::Style::FavorJoin do
|
6
6
|
subject(:cop) { described_class.new }
|
7
7
|
|
8
|
-
it 'registers an
|
8
|
+
it 'registers an offense for an array followed by string' do
|
9
9
|
inspect_source(cop,
|
10
10
|
['%w(one two three) * ", "'])
|
11
|
-
expect(cop.
|
11
|
+
expect(cop.offenses.size).to eq(1)
|
12
12
|
expect(cop.messages)
|
13
13
|
.to eq(['Favor Array#join over Array#*.'])
|
14
14
|
end
|
15
15
|
|
16
|
-
it 'does not register an
|
16
|
+
it 'does not register an offense for numbers' do
|
17
17
|
inspect_source(cop,
|
18
18
|
['%w(one two three) * 4'])
|
19
|
-
expect(cop.
|
19
|
+
expect(cop.offenses).to be_empty
|
20
20
|
end
|
21
21
|
|
22
|
-
it 'does not register an
|
22
|
+
it 'does not register an offense for ambiguous cases' do
|
23
23
|
inspect_source(cop,
|
24
24
|
['test * ", "'])
|
25
|
-
expect(cop.
|
25
|
+
expect(cop.offenses).to be_empty
|
26
26
|
|
27
27
|
inspect_source(cop,
|
28
28
|
['%w(one two three) * test'])
|
29
|
-
expect(cop.
|
29
|
+
expect(cop.offenses).to be_empty
|
30
30
|
end
|
31
31
|
end
|
@@ -5,7 +5,7 @@ require 'spec_helper'
|
|
5
5
|
describe Rubocop::Cop::Style::FavorUnlessOverNegatedIf do
|
6
6
|
subject(:cop) { described_class.new }
|
7
7
|
|
8
|
-
it 'registers an
|
8
|
+
it 'registers an offense for if with exclamation point condition' do
|
9
9
|
inspect_source(cop,
|
10
10
|
['if !a_condition',
|
11
11
|
' some_method',
|
@@ -17,7 +17,7 @@ describe Rubocop::Cop::Style::FavorUnlessOverNegatedIf do
|
|
17
17
|
'conditions.'] * 2)
|
18
18
|
end
|
19
19
|
|
20
|
-
it 'registers an
|
20
|
+
it 'registers an offense for if with "not" condition' do
|
21
21
|
inspect_source(cop,
|
22
22
|
['if not a_condition',
|
23
23
|
' some_method',
|
@@ -26,7 +26,7 @@ describe Rubocop::Cop::Style::FavorUnlessOverNegatedIf do
|
|
26
26
|
expect(cop.messages).to eq(
|
27
27
|
['Favor unless (or control flow or) over if for negative ' \
|
28
28
|
'conditions.'] * 2)
|
29
|
-
expect(cop.
|
29
|
+
expect(cop.offenses.map(&:line)).to eq([1, 4])
|
30
30
|
end
|
31
31
|
|
32
32
|
it 'accepts an if/else with negative condition' do
|
@@ -41,7 +41,7 @@ describe Rubocop::Cop::Style::FavorUnlessOverNegatedIf do
|
|
41
41
|
'elsif other_condition',
|
42
42
|
' something_else',
|
43
43
|
'end'])
|
44
|
-
expect(cop.
|
44
|
+
expect(cop.offenses).to be_empty
|
45
45
|
end
|
46
46
|
|
47
47
|
it 'accepts an if where only part of the contition is negated' do
|
@@ -53,7 +53,7 @@ describe Rubocop::Cop::Style::FavorUnlessOverNegatedIf do
|
|
53
53
|
' some_method',
|
54
54
|
'end',
|
55
55
|
'some_method if not condition or another_condition'])
|
56
|
-
expect(cop.
|
56
|
+
expect(cop.offenses).to be_empty
|
57
57
|
end
|
58
58
|
|
59
59
|
it 'is not confused by negated elsif' do
|
@@ -66,11 +66,11 @@ describe Rubocop::Cop::Style::FavorUnlessOverNegatedIf do
|
|
66
66
|
' 1',
|
67
67
|
'end'])
|
68
68
|
|
69
|
-
expect(cop.
|
69
|
+
expect(cop.offenses).to be_empty
|
70
70
|
end
|
71
71
|
|
72
72
|
it 'does not blow up for ternary ops' do
|
73
73
|
inspect_source(cop, 'a ? b : c')
|
74
|
-
expect(cop.
|
74
|
+
expect(cop.offenses).to be_empty
|
75
75
|
end
|
76
76
|
end
|
@@ -5,7 +5,7 @@ require 'spec_helper'
|
|
5
5
|
describe Rubocop::Cop::Style::FavorUntilOverNegatedWhile do
|
6
6
|
subject(:cop) { described_class.new }
|
7
7
|
|
8
|
-
it 'registers an
|
8
|
+
it 'registers an offense for while with exclamation point condition' do
|
9
9
|
inspect_source(cop,
|
10
10
|
['while !a_condition',
|
11
11
|
' some_method',
|
@@ -16,7 +16,7 @@ describe Rubocop::Cop::Style::FavorUntilOverNegatedWhile do
|
|
16
16
|
['Favor until over while for negative conditions.'] * 2)
|
17
17
|
end
|
18
18
|
|
19
|
-
it 'registers an
|
19
|
+
it 'registers an offense for while with "not" condition' do
|
20
20
|
inspect_source(cop,
|
21
21
|
['while (not a_condition)',
|
22
22
|
' some_method',
|
@@ -24,7 +24,7 @@ describe Rubocop::Cop::Style::FavorUntilOverNegatedWhile do
|
|
24
24
|
'some_method while not a_condition'])
|
25
25
|
expect(cop.messages).to eq(
|
26
26
|
['Favor until over while for negative conditions.'] * 2)
|
27
|
-
expect(cop.
|
27
|
+
expect(cop.offenses.map(&:line)).to eq([1, 4])
|
28
28
|
end
|
29
29
|
|
30
30
|
it 'accepts an while where only part of the contition is negated' do
|
@@ -0,0 +1,71 @@
|
|
1
|
+
# encoding: utf-8
|
2
|
+
|
3
|
+
require 'spec_helper'
|
4
|
+
|
5
|
+
describe Rubocop::Cop::Style::FileName do
|
6
|
+
subject(:cop) { described_class.new(config) }
|
7
|
+
|
8
|
+
let(:config) do
|
9
|
+
Rubocop::Config.new('AllCops' => { 'Includes' => includes })
|
10
|
+
end
|
11
|
+
|
12
|
+
let(:includes) { [] }
|
13
|
+
|
14
|
+
it 'reports offense for camelCase file names ending in .rb' do
|
15
|
+
source = ['print 1']
|
16
|
+
processed_source = parse_source(source)
|
17
|
+
allow(processed_source.buffer)
|
18
|
+
.to receive(:name).and_return('/some/dir/testCase.rb')
|
19
|
+
_investigate(cop, processed_source)
|
20
|
+
expect(cop.offenses.size).to eq(1)
|
21
|
+
end
|
22
|
+
|
23
|
+
it 'reports offense for camelCase file names without file extension' do
|
24
|
+
source = ['print 1']
|
25
|
+
processed_source = parse_source(source)
|
26
|
+
allow(processed_source.buffer)
|
27
|
+
.to receive(:name).and_return('/some/dir/testCase')
|
28
|
+
_investigate(cop, processed_source)
|
29
|
+
expect(cop.offenses.size).to eq(1)
|
30
|
+
end
|
31
|
+
|
32
|
+
it 'accepts offense for snake_case file names ending in .rb' do
|
33
|
+
source = ['print 1']
|
34
|
+
processed_source = parse_source(source)
|
35
|
+
allow(processed_source.buffer)
|
36
|
+
.to receive(:name).and_return('/some/dir/test_case.rb')
|
37
|
+
_investigate(cop, processed_source)
|
38
|
+
expect(cop.offenses).to be_empty
|
39
|
+
end
|
40
|
+
|
41
|
+
it 'accepts offense for snake_case file names without file extension' do
|
42
|
+
source = ['print 1']
|
43
|
+
processed_source = parse_source(source)
|
44
|
+
allow(processed_source.buffer)
|
45
|
+
.to receive(:name).and_return('/some/dir/test_case')
|
46
|
+
_investigate(cop, processed_source)
|
47
|
+
expect(cop.offenses).to be_empty
|
48
|
+
end
|
49
|
+
|
50
|
+
it 'accepts offense for snake_case file names with non-rb extension' do
|
51
|
+
source = ['print 1']
|
52
|
+
processed_source = parse_source(source)
|
53
|
+
allow(processed_source.buffer)
|
54
|
+
.to receive(:name).and_return('/some/dir/some_task.rake')
|
55
|
+
_investigate(cop, processed_source)
|
56
|
+
expect(cop.offenses).to be_empty
|
57
|
+
end
|
58
|
+
|
59
|
+
context 'when the file is specified in AllCops/Includes' do
|
60
|
+
let(:includes) { ['**/Gemfile'] }
|
61
|
+
|
62
|
+
it 'accepts the file name even if it is not snake_case' do
|
63
|
+
source = ['print 1']
|
64
|
+
processed_source = parse_source(source)
|
65
|
+
allow(processed_source.buffer)
|
66
|
+
.to receive(:name).and_return('/some/dir/Gemfile')
|
67
|
+
_investigate(cop, processed_source)
|
68
|
+
expect(cop.offenses).to be_empty
|
69
|
+
end
|
70
|
+
end
|
71
|
+
end
|
@@ -5,22 +5,22 @@ require 'spec_helper'
|
|
5
5
|
describe Rubocop::Cop::Style::FinalNewline do
|
6
6
|
subject(:cop) { described_class.new }
|
7
7
|
|
8
|
-
it 'registers an
|
8
|
+
it 'registers an offense for missing final newline' do
|
9
9
|
source = ['x = 0', 'top']
|
10
10
|
inspect_source(cop, source)
|
11
|
-
expect(cop.
|
11
|
+
expect(cop.offenses.size).to eq(1)
|
12
12
|
end
|
13
13
|
|
14
14
|
it 'accepts a final newline' do
|
15
15
|
source = ['x = 0', 'top', '']
|
16
16
|
inspect_source(cop, source)
|
17
|
-
expect(cop.
|
17
|
+
expect(cop.offenses).to be_empty
|
18
18
|
end
|
19
19
|
|
20
20
|
it 'accepts an empty file' do
|
21
21
|
source = ['']
|
22
22
|
inspect_source(cop, source)
|
23
|
-
expect(cop.
|
23
|
+
expect(cop.offenses).to be_empty
|
24
24
|
end
|
25
25
|
|
26
26
|
it 'auto-corrects missing newline' do
|
@@ -5,19 +5,19 @@ require 'spec_helper'
|
|
5
5
|
describe Rubocop::Cop::Style::FlipFlop do
|
6
6
|
subject(:cop) { described_class.new }
|
7
7
|
|
8
|
-
it 'registers an
|
8
|
+
it 'registers an offense for inclusive flip flops' do
|
9
9
|
inspect_source(cop,
|
10
10
|
['DATA.each_line do |line|',
|
11
11
|
'print line if (line =~ /begin/)..(line =~ /end/)',
|
12
12
|
'end'])
|
13
|
-
expect(cop.
|
13
|
+
expect(cop.offenses.size).to eq(1)
|
14
14
|
end
|
15
15
|
|
16
|
-
it 'registers an
|
16
|
+
it 'registers an offense for exclusive flip flops' do
|
17
17
|
inspect_source(cop,
|
18
18
|
['DATA.each_line do |line|',
|
19
19
|
'print line if (line =~ /begin/)...(line =~ /end/)',
|
20
20
|
'end'])
|
21
|
-
expect(cop.
|
21
|
+
expect(cop.offenses.size).to eq(1)
|
22
22
|
end
|
23
23
|
end
|
@@ -8,7 +8,7 @@ describe Rubocop::Cop::Style::For, :config do
|
|
8
8
|
context 'when each is the enforced style' do
|
9
9
|
let(:cop_config) { { 'EnforcedStyle' => 'each' } }
|
10
10
|
|
11
|
-
it 'registers an
|
11
|
+
it 'registers an offense for for' do
|
12
12
|
inspect_source(cop,
|
13
13
|
['def func',
|
14
14
|
' for n in [1, 2, 3] do',
|
@@ -17,10 +17,10 @@ describe Rubocop::Cop::Style::For, :config do
|
|
17
17
|
'end'])
|
18
18
|
expect(cop.messages).to eq(['Prefer *each* over *for*.'])
|
19
19
|
expect(cop.highlights).to eq(['for'])
|
20
|
-
expect(cop.
|
20
|
+
expect(cop.config_to_allow_offenses).to eq('EnforcedStyle' => 'for')
|
21
21
|
end
|
22
22
|
|
23
|
-
it 'registers an
|
23
|
+
it 'registers an offense for opposite + correct style' do
|
24
24
|
inspect_source(cop,
|
25
25
|
['def func',
|
26
26
|
' for n in [1, 2, 3] do',
|
@@ -31,7 +31,7 @@ describe Rubocop::Cop::Style::For, :config do
|
|
31
31
|
' end',
|
32
32
|
'end'])
|
33
33
|
expect(cop.messages).to eq(['Prefer *each* over *for*.'])
|
34
|
-
expect(cop.
|
34
|
+
expect(cop.config_to_allow_offenses).to eq('Enabled' => false)
|
35
35
|
end
|
36
36
|
|
37
37
|
it 'accepts multiline each' do
|
@@ -41,17 +41,17 @@ describe Rubocop::Cop::Style::For, :config do
|
|
41
41
|
' puts n',
|
42
42
|
' end',
|
43
43
|
'end'])
|
44
|
-
expect(cop.
|
44
|
+
expect(cop.offenses).to be_empty
|
45
45
|
end
|
46
46
|
|
47
47
|
it 'accepts :for' do
|
48
48
|
inspect_source(cop, ['[:for, :ala, :bala]'])
|
49
|
-
expect(cop.
|
49
|
+
expect(cop.offenses).to be_empty
|
50
50
|
end
|
51
51
|
|
52
52
|
it 'accepts def for' do
|
53
53
|
inspect_source(cop, ['def for; end'])
|
54
|
-
expect(cop.
|
54
|
+
expect(cop.offenses).to be_empty
|
55
55
|
end
|
56
56
|
end
|
57
57
|
|
@@ -65,10 +65,10 @@ describe Rubocop::Cop::Style::For, :config do
|
|
65
65
|
' puts n',
|
66
66
|
' end',
|
67
67
|
'end'])
|
68
|
-
expect(cop.
|
68
|
+
expect(cop.offenses).to be_empty
|
69
69
|
end
|
70
70
|
|
71
|
-
it 'registers an
|
71
|
+
it 'registers an offense for multiline each' do
|
72
72
|
inspect_source(cop,
|
73
73
|
['def func',
|
74
74
|
' [1, 2, 3].each do |n|',
|
@@ -77,10 +77,10 @@ describe Rubocop::Cop::Style::For, :config do
|
|
77
77
|
'end'])
|
78
78
|
expect(cop.messages).to eq(['Prefer *for* over *each*.'])
|
79
79
|
expect(cop.highlights).to eq(['each'])
|
80
|
-
expect(cop.
|
80
|
+
expect(cop.config_to_allow_offenses).to eq('EnforcedStyle' => 'each')
|
81
81
|
end
|
82
82
|
|
83
|
-
it 'registers an
|
83
|
+
it 'registers an offense for correct + opposite style' do
|
84
84
|
inspect_source(cop,
|
85
85
|
['def func',
|
86
86
|
' for n in [1, 2, 3] do',
|
@@ -91,7 +91,7 @@ describe Rubocop::Cop::Style::For, :config do
|
|
91
91
|
' end',
|
92
92
|
'end'])
|
93
93
|
expect(cop.messages).to eq(['Prefer *for* over *each*.'])
|
94
|
-
expect(cop.
|
94
|
+
expect(cop.config_to_allow_offenses).to eq('Enabled' => false)
|
95
95
|
end
|
96
96
|
|
97
97
|
it 'accepts single line each' do
|
@@ -99,7 +99,7 @@ describe Rubocop::Cop::Style::For, :config do
|
|
99
99
|
['def func',
|
100
100
|
' [1, 2, 3].each { |n| puts n }',
|
101
101
|
'end'])
|
102
|
-
expect(cop.
|
102
|
+
expect(cop.offenses).to be_empty
|
103
103
|
end
|
104
104
|
end
|
105
105
|
end
|