Sha256: d08b93054061dc9e7e79380b3b42eac0ef00ecd92d63a64392bc2016146c52c7
Contents?: true
Size: 1.01 KB
Versions: 1
Compression:
Stored size: 1.01 KB
Contents
module CC module Analyzer class IssueValidator CHECKS = [ IssueCategoryValidation, IssueCheckNamePresenceValidation, IssueDescriptionPresenceValidation, IssuePathExistenceValidation, IssuePathPresenceValidation, IssueRelativePathValidation, IssueTypeValidation, ].freeze attr_reader :error def initialize(issue) @issue = issue end def valid? return @valid unless @valid.nil? if issue && invalid_messages.any? @error = { message: "#{invalid_messages.join("; ")}: `#{issue}`.", issue: issue, } @valid = false else @valid = true end end private attr_reader :issue def invalid_messages @invalid_messages ||= CHECKS.each_with_object([]) do |check, result| validator = check.new(issue) result << validator.message unless validator.valid? end end end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
codeclimate-0.25.0 | lib/cc/analyzer/issue_validator.rb |