Sha256: 6bcc5c820bd5c36ed47dba534f027b6faac43d188956aec9d37f6e8cb7135039
Contents?: true
Size: 731 Bytes
Versions: 18
Compression:
Stored size: 731 Bytes
Contents
# frozen_string_literal: true module Runby module Utility # Helps sanitize method parameters. (See RSpec documentation for examples) class ParameterSanitizer attr_reader :parameter def initialize(parameter) @parameter = parameter end def self.sanitize(parameter) ParameterSanitizer.new parameter end def as(type) return @parameter if @parameter.is_a?(type) raise "Unable to sanitize parameter of type #{type}. Missing 'parse' method." unless type.respond_to? :parse type.parse(@parameter) end end end # Just a shortcut method def self.sanitize(parameter) Runby::Utility::ParameterSanitizer.sanitize(parameter) end end
Version data entries
18 entries across 18 versions & 1 rubygems