Sha256: 3ff0b2110e6a53032c3ae796abc1db2b8f63f6205ed14825f17bc3d366ec7d79
Contents?: true
Size: 533 Bytes
Versions: 9
Compression:
Stored size: 533 Bytes
Contents
# frozen_string_literal: true require 'grape/validations/validators/multiple_params_base' module Grape module Validations 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
Version data entries
9 entries across 9 versions & 2 rubygems