Sha256: 09eb02de5bb8051a836c210d9c488a60926ffb802d622e9fa16f6794f7b853ac

Contents?: true

Size: 735 Bytes

Versions: 153

Compression:

Stored size: 735 Bytes

Contents

module CC
  module Analyzer
    module IssueValidations
      class CategoryValidation < Validation
        CATEGORIES = [
          "Bug Risk".freeze,
          "Clarity".freeze,
          "Compatibility".freeze,
          "Complexity".freeze,
          "Duplication".freeze,
          "Performance".freeze,
          "Security".freeze,
          "Style".freeze,
        ].freeze

        def valid?
          object["categories"].present? && no_invalid_categories?
        end

        def message
          "Category must be at least one of #{CATEGORIES.join(", ")}"
        end

        private

        def no_invalid_categories?
          (CATEGORIES | object["categories"]) == CATEGORIES
        end
      end
    end
  end
end

Version data entries

153 entries across 153 versions & 2 rubygems

Version Path
codeclimate-0.41.0 lib/cc/analyzer/issue_validations/category_validation.rb
codeclimate-0.40.3 lib/cc/analyzer/issue_validations/category_validation.rb
codeclimate-0.40.2 lib/cc/analyzer/issue_validations/category_validation.rb
codeclimate-0.40.1 lib/cc/analyzer/issue_validations/category_validation.rb
codeclimate-0.40.0 lib/cc/analyzer/issue_validations/category_validation.rb
codeclimate-0.39.0 lib/cc/analyzer/issue_validations/category_validation.rb
codeclimate-0.38.1 lib/cc/analyzer/issue_validations/category_validation.rb
codeclimate-0.38.0 lib/cc/analyzer/issue_validations/category_validation.rb
codeclimate-0.37.0 lib/cc/analyzer/issue_validations/category_validation.rb
codeclimate-0.36.0 lib/cc/analyzer/issue_validations/category_validation.rb
codeclimate-0.35.2 lib/cc/analyzer/issue_validations/category_validation.rb
codeclimate-0.35.1 lib/cc/analyzer/issue_validations/category_validation.rb
codeclimate-0.35.0 lib/cc/analyzer/issue_validations/category_validation.rb