Sha256: 89c5abea45b9cf9269db81f732ae55dcc7f17c6bab936dd3773709ed90a21cf9
Contents?: true
Size: 519 Bytes
Versions: 7
Compression:
Stored size: 519 Bytes
Contents
# frozen_string_literal: true module Grape module Validations module Validators class ExactlyOneOfValidator < MultipleParamsBase def validate_params!(params) keys = keys_in_common(params) return if keys.length == 1 raise Grape::Exceptions::Validation.new(params: all_keys, message: message(:exactly_one)) if keys.length.zero? raise Grape::Exceptions::Validation.new(params: keys, message: message(:mutual_exclusion)) end end end end end
Version data entries
7 entries across 7 versions & 1 rubygems