Merge pull request #3411 from issyl0/whitelist_etc_and_fix_autocorrect

formula_desc_cop: Whitelist "etc." and fix the full stop autocorrect
This commit is contained in:
Mike McQuaid 2017-11-19 14:39:09 +00:00 committed by GitHub
commit c6a5bbac7d
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23

View File

@ -40,7 +40,7 @@ module RuboCop
# - Checks for correct usage of `command-line` in `desc`
# - Checks description starts with a capital letter
# - Checks if `desc` contains the formula name
# - Checks if `desc` ends with a full stop
# - Checks if `desc` ends with a full stop (apart from in the case of "etc.")
class Desc < FormulaCop
VALID_LOWERCASE_WORDS = %w[
ex
@ -83,8 +83,8 @@ module RuboCop
problem "Description shouldn't start with the formula name"
end
# Check if a full stop is used at the end of a formula's desc
return unless regex_match_group(desc, /\.$/)
# Check if a full stop is used at the end of a formula's desc (apart from in the case of "etc.")
return unless regex_match_group(desc, /\.$/) && !string_content(desc).end_with?("etc.")
problem "Description shouldn't end with a full stop"
end
@ -103,7 +103,7 @@ module RuboCop
correction.gsub!(/(^|[^a-z])#{@formula_name}([^a-z]|$)/i, "\\1\\2")
correction.gsub!(/^(['"]?)\s+/, "\\1")
correction.gsub!(/\s+(['"]?)$/, "\\1")
correction.gsub!(/\.$/, "")
correction.gsub!(/\.(['"]?)$/, "\\1")
corrector.insert_before(node.source_range, correction)
corrector.remove(node.source_range)
end