codeclimate/codeclimate

View on GitHub
lib/cc/analyzer/measurement_validations/name_validation.rb

Summary

Maintainability
A
0 mins
Test Coverage
A
100%
module CC
  module Analyzer
    module MeasurementValidations
      class NameValidation < Validation
        REGEX = /^[A-Za-z0-9_\.\-]+$/

        def valid?
          name&.is_a?(String) && REGEX.match?(name)
        end

        def message
          "Name must be present and contain only letters, numbers, periods, hyphens, and underscores"
        end

        private

        def name
          object["name"]
        end
      end
    end
  end
end