rubocop 0.18.1 → 0.19.0
Sign up to get free protection for your applications and to get access to all the features.
Potentially problematic release.
This version of rubocop might be problematic. Click here for more details.
- 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,30 +5,30 @@ require 'spec_helper'
|
|
5
5
|
describe Rubocop::Cop::Style::AndOr do
|
6
6
|
subject(:cop) { described_class.new }
|
7
7
|
|
8
|
-
it 'registers an
|
8
|
+
it 'registers an offense for OR' do
|
9
9
|
inspect_source(cop,
|
10
10
|
['test if a or b'])
|
11
|
-
expect(cop.
|
11
|
+
expect(cop.offenses.size).to eq(1)
|
12
12
|
expect(cop.messages).to eq(['Use || instead of or.'])
|
13
13
|
end
|
14
14
|
|
15
|
-
it 'registers an
|
15
|
+
it 'registers an offense for AND' do
|
16
16
|
inspect_source(cop,
|
17
17
|
['test if a and b'])
|
18
|
-
expect(cop.
|
18
|
+
expect(cop.offenses.size).to eq(1)
|
19
19
|
expect(cop.messages).to eq(['Use && instead of and.'])
|
20
20
|
end
|
21
21
|
|
22
22
|
it 'accepts ||' do
|
23
23
|
inspect_source(cop,
|
24
24
|
['test if a || b'])
|
25
|
-
expect(cop.
|
25
|
+
expect(cop.offenses).to be_empty
|
26
26
|
end
|
27
27
|
|
28
28
|
it 'accepts &&' do
|
29
29
|
inspect_source(cop,
|
30
30
|
['test if a && b'])
|
31
|
-
expect(cop.
|
31
|
+
expect(cop.offenses).to be_empty
|
32
32
|
end
|
33
33
|
|
34
34
|
it 'auto-corrects "and" with &&' do
|
@@ -5,11 +5,11 @@ require 'spec_helper'
|
|
5
5
|
describe Rubocop::Cop::Style::AsciiComments do
|
6
6
|
subject(:cop) { described_class.new }
|
7
7
|
|
8
|
-
it 'registers an
|
8
|
+
it 'registers an offense for a comment with non-ascii chars' do
|
9
9
|
inspect_source(cop,
|
10
10
|
['# encoding: utf-8',
|
11
11
|
'# 这是什么?'])
|
12
|
-
expect(cop.
|
12
|
+
expect(cop.offenses.size).to eq(1)
|
13
13
|
expect(cop.messages)
|
14
14
|
.to eq(['Use only ascii symbols in comments.'])
|
15
15
|
end
|
@@ -17,6 +17,6 @@ describe Rubocop::Cop::Style::AsciiComments do
|
|
17
17
|
it 'accepts comments with only ascii chars' do
|
18
18
|
inspect_source(cop,
|
19
19
|
['# AZaz1@$%~,;*_`|'])
|
20
|
-
expect(cop.
|
20
|
+
expect(cop.offenses).to be_empty
|
21
21
|
end
|
22
22
|
end
|
@@ -5,11 +5,11 @@ require 'spec_helper'
|
|
5
5
|
describe Rubocop::Cop::Style::AsciiIdentifiers do
|
6
6
|
subject(:cop) { described_class.new }
|
7
7
|
|
8
|
-
it 'registers an
|
8
|
+
it 'registers an offense for a variable name with non-ascii chars' do
|
9
9
|
inspect_source(cop,
|
10
10
|
['# encoding: utf-8',
|
11
11
|
'älg = 1'])
|
12
|
-
expect(cop.
|
12
|
+
expect(cop.offenses.size).to eq(1)
|
13
13
|
expect(cop.messages)
|
14
14
|
.to eq(['Use only ascii symbols in identifiers.'])
|
15
15
|
end
|
@@ -17,7 +17,7 @@ describe Rubocop::Cop::Style::AsciiIdentifiers do
|
|
17
17
|
it 'accepts identifiers with only ascii chars' do
|
18
18
|
inspect_source(cop,
|
19
19
|
['x.empty?'])
|
20
|
-
expect(cop.
|
20
|
+
expect(cop.offenses).to be_empty
|
21
21
|
end
|
22
22
|
|
23
23
|
it 'does not get confused by a byte order mark' do
|
@@ -25,12 +25,12 @@ describe Rubocop::Cop::Style::AsciiIdentifiers do
|
|
25
25
|
inspect_source(cop,
|
26
26
|
[bom + '# encoding: utf-8',
|
27
27
|
"puts 'foo'"])
|
28
|
-
expect(cop.
|
28
|
+
expect(cop.offenses).to be_empty
|
29
29
|
end
|
30
30
|
|
31
31
|
it 'does not get confused by an empty file' do
|
32
32
|
inspect_source(cop,
|
33
33
|
[''])
|
34
|
-
expect(cop.
|
34
|
+
expect(cop.offenses).to be_empty
|
35
35
|
end
|
36
36
|
end
|
@@ -5,11 +5,11 @@ require 'spec_helper'
|
|
5
5
|
describe Rubocop::Cop::Style::Attr do
|
6
6
|
subject(:cop) { described_class.new }
|
7
7
|
|
8
|
-
it 'registers an
|
8
|
+
it 'registers an offense attr' do
|
9
9
|
inspect_source(cop, ['class SomeClass',
|
10
10
|
' attr :name',
|
11
11
|
'end'])
|
12
|
-
expect(cop.
|
12
|
+
expect(cop.offenses.size).to eq(1)
|
13
13
|
end
|
14
14
|
|
15
15
|
it 'auto-corrects attr to attr_reader' do
|
@@ -5,9 +5,9 @@ require 'spec_helper'
|
|
5
5
|
describe Rubocop::Cop::Style::BeginBlock do
|
6
6
|
subject(:cop) { described_class.new }
|
7
7
|
|
8
|
-
it 'reports an
|
8
|
+
it 'reports an offense for a BEGIN block' do
|
9
9
|
src = ['BEGIN { test }']
|
10
10
|
inspect_source(cop, src)
|
11
|
-
expect(cop.
|
11
|
+
expect(cop.offenses.size).to eq(1)
|
12
12
|
end
|
13
13
|
end
|
@@ -5,17 +5,17 @@ require 'spec_helper'
|
|
5
5
|
describe Rubocop::Cop::Style::BlockComments do
|
6
6
|
subject(:cop) { described_class.new }
|
7
7
|
|
8
|
-
it 'registers an
|
8
|
+
it 'registers an offense for block comments' do
|
9
9
|
inspect_source(cop,
|
10
10
|
['=begin',
|
11
11
|
'comment',
|
12
12
|
'=end'])
|
13
|
-
expect(cop.
|
13
|
+
expect(cop.offenses.size).to eq(1)
|
14
14
|
end
|
15
15
|
|
16
16
|
it 'accepts regular comments' do
|
17
17
|
inspect_source(cop,
|
18
18
|
['# comment'])
|
19
|
-
expect(cop.
|
19
|
+
expect(cop.offenses).to be_empty
|
20
20
|
end
|
21
21
|
end
|
@@ -12,10 +12,10 @@ describe Rubocop::Cop::Style::BlockNesting, :config do
|
|
12
12
|
' puts b',
|
13
13
|
' end',
|
14
14
|
'end']
|
15
|
-
|
15
|
+
expect_nesting_offenses(source, [])
|
16
16
|
end
|
17
17
|
|
18
|
-
it 'registers an
|
18
|
+
it 'registers an offense for `Max + 1` levels of `if` nesting' do
|
19
19
|
source = ['if a',
|
20
20
|
' if b',
|
21
21
|
' if c',
|
@@ -23,10 +23,10 @@ describe Rubocop::Cop::Style::BlockNesting, :config do
|
|
23
23
|
' end',
|
24
24
|
' end',
|
25
25
|
'end']
|
26
|
-
|
26
|
+
expect_nesting_offenses(source, [3])
|
27
27
|
end
|
28
28
|
|
29
|
-
it 'registers a single
|
29
|
+
it 'registers a single offense for `Max + 2` levels of `if` nesting' do
|
30
30
|
source = ['if a',
|
31
31
|
' if b',
|
32
32
|
' if c',
|
@@ -36,10 +36,10 @@ describe Rubocop::Cop::Style::BlockNesting, :config do
|
|
36
36
|
' end',
|
37
37
|
' end',
|
38
38
|
'end']
|
39
|
-
|
39
|
+
expect_nesting_offenses(source, [3])
|
40
40
|
end
|
41
41
|
|
42
|
-
it 'registers 2
|
42
|
+
it 'registers 2 offenses' do
|
43
43
|
source = ['if a',
|
44
44
|
' if b',
|
45
45
|
' if c',
|
@@ -52,10 +52,10 @@ describe Rubocop::Cop::Style::BlockNesting, :config do
|
|
52
52
|
' end',
|
53
53
|
' end',
|
54
54
|
'end']
|
55
|
-
|
55
|
+
expect_nesting_offenses(source, [3, 8])
|
56
56
|
end
|
57
57
|
|
58
|
-
it 'registers an
|
58
|
+
it 'registers an offense for nested `case`' do
|
59
59
|
source = ['if a',
|
60
60
|
' if b',
|
61
61
|
' case c',
|
@@ -64,10 +64,10 @@ describe Rubocop::Cop::Style::BlockNesting, :config do
|
|
64
64
|
' end',
|
65
65
|
' end',
|
66
66
|
'end']
|
67
|
-
|
67
|
+
expect_nesting_offenses(source, [3])
|
68
68
|
end
|
69
69
|
|
70
|
-
it 'registers an
|
70
|
+
it 'registers an offense for nested `while`' do
|
71
71
|
source = ['if a',
|
72
72
|
' if b',
|
73
73
|
' while c',
|
@@ -75,10 +75,10 @@ describe Rubocop::Cop::Style::BlockNesting, :config do
|
|
75
75
|
' end',
|
76
76
|
' end',
|
77
77
|
'end']
|
78
|
-
|
78
|
+
expect_nesting_offenses(source, [3])
|
79
79
|
end
|
80
80
|
|
81
|
-
it 'registers an
|
81
|
+
it 'registers an offense for nested modifier `while`' do
|
82
82
|
source = ['if a',
|
83
83
|
' if b',
|
84
84
|
' begin',
|
@@ -86,10 +86,10 @@ describe Rubocop::Cop::Style::BlockNesting, :config do
|
|
86
86
|
' end while c',
|
87
87
|
' end',
|
88
88
|
'end']
|
89
|
-
|
89
|
+
expect_nesting_offenses(source, [3])
|
90
90
|
end
|
91
91
|
|
92
|
-
it 'registers an
|
92
|
+
it 'registers an offense for nested `until`' do
|
93
93
|
source = ['if a',
|
94
94
|
' if b',
|
95
95
|
' until c',
|
@@ -97,10 +97,10 @@ describe Rubocop::Cop::Style::BlockNesting, :config do
|
|
97
97
|
' end',
|
98
98
|
' end',
|
99
99
|
'end']
|
100
|
-
|
100
|
+
expect_nesting_offenses(source, [3])
|
101
101
|
end
|
102
102
|
|
103
|
-
it 'registers an
|
103
|
+
it 'registers an offense for nested modifier `until`' do
|
104
104
|
source = ['if a',
|
105
105
|
' if b',
|
106
106
|
' begin',
|
@@ -108,10 +108,10 @@ describe Rubocop::Cop::Style::BlockNesting, :config do
|
|
108
108
|
' end until c',
|
109
109
|
' end',
|
110
110
|
'end']
|
111
|
-
|
111
|
+
expect_nesting_offenses(source, [3])
|
112
112
|
end
|
113
113
|
|
114
|
-
it 'registers an
|
114
|
+
it 'registers an offense for nested `for`' do
|
115
115
|
source = ['if a',
|
116
116
|
' if b',
|
117
117
|
' for c in [1,2] do',
|
@@ -119,10 +119,10 @@ describe Rubocop::Cop::Style::BlockNesting, :config do
|
|
119
119
|
' end',
|
120
120
|
' end',
|
121
121
|
'end']
|
122
|
-
|
122
|
+
expect_nesting_offenses(source, [3])
|
123
123
|
end
|
124
124
|
|
125
|
-
it 'registers an
|
125
|
+
it 'registers an offense for nested `rescue`' do
|
126
126
|
source = ['if a',
|
127
127
|
' if b',
|
128
128
|
' begin',
|
@@ -132,7 +132,7 @@ describe Rubocop::Cop::Style::BlockNesting, :config do
|
|
132
132
|
' end',
|
133
133
|
' end',
|
134
134
|
'end']
|
135
|
-
|
135
|
+
expect_nesting_offenses(source, [5])
|
136
136
|
end
|
137
137
|
|
138
138
|
it 'accepts if/elsif' do
|
@@ -141,16 +141,16 @@ describe Rubocop::Cop::Style::BlockNesting, :config do
|
|
141
141
|
'elsif c',
|
142
142
|
'elsif d',
|
143
143
|
'end']
|
144
|
-
|
144
|
+
expect_nesting_offenses(source, [])
|
145
145
|
end
|
146
146
|
|
147
|
-
def
|
147
|
+
def expect_nesting_offenses(source, lines, used_nesting_level = 3)
|
148
148
|
inspect_source(cop, source)
|
149
|
-
expect(cop.
|
149
|
+
expect(cop.offenses.map(&:line)).to eq(lines)
|
150
150
|
expect(cop.messages).to eq(
|
151
151
|
['Avoid more than 2 levels of block nesting.'] * lines.length)
|
152
|
-
if cop.
|
153
|
-
expect(cop.
|
152
|
+
if cop.offenses.size > 0
|
153
|
+
expect(cop.config_to_allow_offenses['Max']).to eq(used_nesting_level)
|
154
154
|
end
|
155
155
|
end
|
156
156
|
end
|
@@ -8,10 +8,10 @@ describe Rubocop::Cop::Style::Blocks do
|
|
8
8
|
it 'accepts a multiline block with do-end' do
|
9
9
|
inspect_source(cop, ['each do |x|',
|
10
10
|
'end'])
|
11
|
-
expect(cop.
|
11
|
+
expect(cop.offenses).to be_empty
|
12
12
|
end
|
13
13
|
|
14
|
-
it 'registers an
|
14
|
+
it 'registers an offense for a single line block with do-end' do
|
15
15
|
inspect_source(cop, ['each do |x| end'])
|
16
16
|
expect(cop.messages)
|
17
17
|
.to eq(['Prefer {...} over do...end for single-line blocks.'])
|
@@ -19,7 +19,7 @@ describe Rubocop::Cop::Style::Blocks do
|
|
19
19
|
|
20
20
|
it 'accepts a single line block with braces' do
|
21
21
|
inspect_source(cop, ['each { |x| }'])
|
22
|
-
expect(cop.
|
22
|
+
expect(cop.offenses).to be_empty
|
23
23
|
end
|
24
24
|
|
25
25
|
it 'auto-corrects do and end for single line blocks to { and }' do
|
@@ -28,7 +28,7 @@ describe Rubocop::Cop::Style::Blocks do
|
|
28
28
|
end
|
29
29
|
|
30
30
|
context 'when there are braces around a multi-line block' do
|
31
|
-
it 'registers an
|
31
|
+
it 'registers an offense in the simple case' do
|
32
32
|
inspect_source(cop, ['each { |x|',
|
33
33
|
'}'])
|
34
34
|
expect(cop.messages)
|
@@ -48,11 +48,11 @@ describe Rubocop::Cop::Style::Blocks do
|
|
48
48
|
' Counter.count',
|
49
49
|
'}.from(0).to(1)']
|
50
50
|
inspect_source(cop, src)
|
51
|
-
expect(cop.
|
51
|
+
expect(cop.offenses).to be_empty
|
52
52
|
end
|
53
53
|
|
54
|
-
it 'registers an
|
55
|
-
|
54
|
+
it 'registers an offense for braces if do-end would not change ' \
|
55
|
+
'the meaning' do
|
56
56
|
src = ['scope :foo, (lambda { |f|',
|
57
57
|
' where(condition: "value")',
|
58
58
|
'})',
|
@@ -61,7 +61,7 @@ describe Rubocop::Cop::Style::Blocks do
|
|
61
61
|
' # ...',
|
62
62
|
'})']
|
63
63
|
inspect_source(cop, src)
|
64
|
-
expect(cop.
|
64
|
+
expect(cop.offenses.size).to eq(2)
|
65
65
|
end
|
66
66
|
|
67
67
|
it 'can handle special method names such as []= and done?' do
|
@@ -73,14 +73,14 @@ describe Rubocop::Cop::Style::BracesAroundHashParameters, :config do
|
|
73
73
|
|
74
74
|
end
|
75
75
|
|
76
|
-
describe 'registers an
|
76
|
+
describe 'registers an offense for' do
|
77
77
|
it 'one non-hash parameter followed by a hash parameter with braces' do
|
78
78
|
inspect_source(cop, ['where(1, { y: 2 })'])
|
79
79
|
expect(cop.messages).to eq([
|
80
80
|
'Redundant curly braces around a hash parameter.'
|
81
81
|
])
|
82
82
|
expect(cop.highlights).to eq(['{ y: 2 }'])
|
83
|
-
expect(cop.
|
83
|
+
expect(cop.config_to_allow_offenses).to eq('EnforcedStyle' => 'braces')
|
84
84
|
end
|
85
85
|
|
86
86
|
it 'correct + opposite style' do
|
@@ -89,7 +89,7 @@ describe Rubocop::Cop::Style::BracesAroundHashParameters, :config do
|
|
89
89
|
expect(cop.messages).to eq([
|
90
90
|
'Redundant curly braces around a hash parameter.'
|
91
91
|
])
|
92
|
-
expect(cop.
|
92
|
+
expect(cop.config_to_allow_offenses).to eq('Enabled' => false)
|
93
93
|
end
|
94
94
|
|
95
95
|
it 'opposite + correct style' do
|
@@ -98,7 +98,7 @@ describe Rubocop::Cop::Style::BracesAroundHashParameters, :config do
|
|
98
98
|
expect(cop.messages).to eq([
|
99
99
|
'Redundant curly braces around a hash parameter.'
|
100
100
|
])
|
101
|
-
expect(cop.
|
101
|
+
expect(cop.config_to_allow_offenses).to eq('Enabled' => false)
|
102
102
|
end
|
103
103
|
|
104
104
|
it 'one object method hash parameter with braces' do
|
@@ -218,14 +218,14 @@ describe Rubocop::Cop::Style::BracesAroundHashParameters, :config do
|
|
218
218
|
end
|
219
219
|
end
|
220
220
|
|
221
|
-
describe 'registers an
|
221
|
+
describe 'registers an offense for' do
|
222
222
|
it 'one hash parameter without braces' do
|
223
223
|
inspect_source(cop, ['where(x: "y")'])
|
224
224
|
expect(cop.messages).to eq([
|
225
225
|
'Missing curly braces around a hash parameter.'
|
226
226
|
])
|
227
227
|
expect(cop.highlights).to eq(['x: "y"'])
|
228
|
-
expect(cop.
|
228
|
+
expect(cop.config_to_allow_offenses).to eq('EnforcedStyle' =>
|
229
229
|
'no_braces')
|
230
230
|
end
|
231
231
|
|
@@ -235,7 +235,7 @@ describe Rubocop::Cop::Style::BracesAroundHashParameters, :config do
|
|
235
235
|
expect(cop.messages).to eq([
|
236
236
|
'Missing curly braces around a hash parameter.'
|
237
237
|
])
|
238
|
-
expect(cop.
|
238
|
+
expect(cop.config_to_allow_offenses).to eq('Enabled' => false)
|
239
239
|
end
|
240
240
|
|
241
241
|
it 'correct + opposite style' do
|
@@ -244,7 +244,7 @@ describe Rubocop::Cop::Style::BracesAroundHashParameters, :config do
|
|
244
244
|
expect(cop.messages).to eq([
|
245
245
|
'Missing curly braces around a hash parameter.'
|
246
246
|
])
|
247
|
-
expect(cop.
|
247
|
+
expect(cop.config_to_allow_offenses).to eq('Enabled' => false)
|
248
248
|
end
|
249
249
|
|
250
250
|
it 'one hash parameter with multiple keys and without braces' do
|
@@ -5,8 +5,8 @@ require 'spec_helper'
|
|
5
5
|
describe Rubocop::Cop::Style::CaseEquality do
|
6
6
|
subject(:cop) { described_class.new }
|
7
7
|
|
8
|
-
it 'registers an
|
8
|
+
it 'registers an offense for ===' do
|
9
9
|
inspect_source(cop, ['Array === var'])
|
10
|
-
expect(cop.
|
10
|
+
expect(cop.offenses.size).to eq(1)
|
11
11
|
end
|
12
12
|
end
|
@@ -25,10 +25,10 @@ describe Rubocop::Cop::Style::CaseIndentation do
|
|
25
25
|
" 'output2'",
|
26
26
|
' end']
|
27
27
|
inspect_source(cop, source)
|
28
|
-
expect(cop.
|
28
|
+
expect(cop.offenses).to be_empty
|
29
29
|
end
|
30
30
|
|
31
|
-
it 'registers on
|
31
|
+
it 'registers on offense for an assignment indented as end' do
|
32
32
|
source = ['output = case variable',
|
33
33
|
"when 'value1'",
|
34
34
|
" 'output1'",
|
@@ -37,11 +37,11 @@ describe Rubocop::Cop::Style::CaseIndentation do
|
|
37
37
|
'end']
|
38
38
|
inspect_source(cop, source)
|
39
39
|
expect(cop.messages).to eq(['Indent when as deep as case.'])
|
40
|
-
expect(cop.
|
40
|
+
expect(cop.config_to_allow_offenses).to eq('IndentWhenRelativeTo' =>
|
41
41
|
'end')
|
42
42
|
end
|
43
43
|
|
44
|
-
it 'registers on
|
44
|
+
it 'registers on offense for an assignment indented some other way' do
|
45
45
|
source = ['output = case variable',
|
46
46
|
" when 'value1'",
|
47
47
|
" 'output1'",
|
@@ -50,10 +50,10 @@ describe Rubocop::Cop::Style::CaseIndentation do
|
|
50
50
|
'end']
|
51
51
|
inspect_source(cop, source)
|
52
52
|
expect(cop.messages).to eq(['Indent when as deep as case.'])
|
53
|
-
expect(cop.
|
53
|
+
expect(cop.config_to_allow_offenses).to eq('Enabled' => false)
|
54
54
|
end
|
55
55
|
|
56
|
-
it 'registers on
|
56
|
+
it 'registers on offense for correct + opposite' do
|
57
57
|
source = ['output = case variable',
|
58
58
|
" when 'value1'",
|
59
59
|
" 'output1'",
|
@@ -68,11 +68,11 @@ describe Rubocop::Cop::Style::CaseIndentation do
|
|
68
68
|
'end']
|
69
69
|
inspect_source(cop, source)
|
70
70
|
expect(cop.messages).to eq(['Indent when as deep as case.'])
|
71
|
-
expect(cop.
|
71
|
+
expect(cop.config_to_allow_offenses).to eq('Enabled' => false)
|
72
72
|
end
|
73
73
|
end
|
74
74
|
|
75
|
-
it "registers an
|
75
|
+
it "registers an offense for a when clause that's deeper than case" do
|
76
76
|
source = ['case a',
|
77
77
|
' when 0 then return',
|
78
78
|
' else',
|
@@ -99,7 +99,7 @@ describe Rubocop::Cop::Style::CaseIndentation do
|
|
99
99
|
'end',
|
100
100
|
'']
|
101
101
|
inspect_source(cop, source)
|
102
|
-
expect(cop.
|
102
|
+
expect(cop.offenses).to be_empty
|
103
103
|
end
|
104
104
|
|
105
105
|
it "doesn't get confused by strings with case in them" do
|
@@ -163,10 +163,10 @@ describe Rubocop::Cop::Style::CaseIndentation do
|
|
163
163
|
" 'output2'",
|
164
164
|
' end']
|
165
165
|
inspect_source(cop, source)
|
166
|
-
expect(cop.
|
166
|
+
expect(cop.offenses).to be_empty
|
167
167
|
end
|
168
168
|
|
169
|
-
it 'registers on
|
169
|
+
it 'registers on offense for an assignment indented some other way' do
|
170
170
|
source = ['output = case variable',
|
171
171
|
" when 'value1'",
|
172
172
|
" 'output1'",
|
@@ -187,11 +187,11 @@ describe Rubocop::Cop::Style::CaseIndentation do
|
|
187
187
|
' end',
|
188
188
|
'end']
|
189
189
|
inspect_source(cop, source)
|
190
|
-
expect(cop.
|
190
|
+
expect(cop.offenses).to be_empty
|
191
191
|
end
|
192
192
|
|
193
|
-
it "registers an
|
194
|
-
|
193
|
+
it "registers an offense for a when clause that's equally indented " \
|
194
|
+
'with case' do
|
195
195
|
source = ['y = case a',
|
196
196
|
' when 0 then break',
|
197
197
|
' when 0 then return',
|
@@ -226,10 +226,10 @@ describe Rubocop::Cop::Style::CaseIndentation do
|
|
226
226
|
" 'output2'",
|
227
227
|
'end']
|
228
228
|
inspect_source(cop, source)
|
229
|
-
expect(cop.
|
229
|
+
expect(cop.offenses).to be_empty
|
230
230
|
end
|
231
231
|
|
232
|
-
it 'registers on
|
232
|
+
it 'registers on offense for an assignment indented some other way' do
|
233
233
|
source = ['output = case variable',
|
234
234
|
" when 'value1'",
|
235
235
|
" 'output1'",
|
@@ -256,10 +256,10 @@ describe Rubocop::Cop::Style::CaseIndentation do
|
|
256
256
|
" 'output2'",
|
257
257
|
'end']
|
258
258
|
inspect_source(cop, source)
|
259
|
-
expect(cop.
|
259
|
+
expect(cop.offenses).to be_empty
|
260
260
|
end
|
261
261
|
|
262
|
-
it 'registers on
|
262
|
+
it 'registers on offense for an assignment indented as case' do
|
263
263
|
source = ['output = case variable',
|
264
264
|
" when 'value1'",
|
265
265
|
" 'output1'",
|
@@ -268,11 +268,11 @@ describe Rubocop::Cop::Style::CaseIndentation do
|
|
268
268
|
' end']
|
269
269
|
inspect_source(cop, source)
|
270
270
|
expect(cop.messages).to eq(['Indent when one step more than end.'])
|
271
|
-
expect(cop.
|
271
|
+
expect(cop.config_to_allow_offenses).to eq('IndentWhenRelativeTo' =>
|
272
272
|
'case')
|
273
273
|
end
|
274
274
|
|
275
|
-
it 'registers on
|
275
|
+
it 'registers on offense for an assignment indented some other way' do
|
276
276
|
source = ['output = case variable',
|
277
277
|
" when 'value1'",
|
278
278
|
" 'output1'",
|
@@ -281,7 +281,7 @@ describe Rubocop::Cop::Style::CaseIndentation do
|
|
281
281
|
' end']
|
282
282
|
inspect_source(cop, source)
|
283
283
|
expect(cop.messages).to eq(['Indent when one step more than end.'])
|
284
|
-
expect(cop.
|
284
|
+
expect(cop.config_to_allow_offenses).to eq('Enabled' => false)
|
285
285
|
end
|
286
286
|
end
|
287
287
|
end
|