Sha256: 6d1cf8be3058464c45bcda96cee7b3b65d1b4f9c627edf6452a9702164d262b4
Contents?: true
Size: 906 Bytes
Versions: 68
Compression:
Stored size: 906 Bytes
Contents
require 'r10k/settings/definition' module R10K module Settings class EnumDefinition < R10K::Settings::Definition def validate if @value if @multi && @value.respond_to?(:select) invalid = @value.select { |val| !@enum.include?(val) } if invalid.size > 0 raise ArgumentError, _("Setting %{name} may only contain %{enums}; the disallowed values %{invalid} were present") % {name: @name, enums: @enum.inspect, invalid: invalid.inspect} end else if !@enum.include?(@value) raise ArgumentError, _("Setting %{name} should be one of %{enums}, not '%{value}'") % {name: @name, enums: @enum.inspect, value: @value} end end end end private def allowed_initialize_opts super.merge({:enum => true, :multi => true}) end end end end
Version data entries
68 entries across 68 versions & 2 rubygems