Sha256: 4812e5735ef2b261b18383a1110c3ed088f2970ff9b8d78ae4e5474542e6b4f4

Contents?: true

Size: 492 Bytes

Versions: 1

Compression:

Stored size: 492 Bytes

Contents

module ValidationPredicates
  def length(n)
    -> (s) { s.length == n }
  end

  def min_length(n)
    ->(s) { s.length >= n }
  end

  def max_length(n)
    -> (s) { s.length <= n }
  end

  def min(n)
    -> (s) { s >= n }
  end

  def valid_year
    ->(y) { (y.to_s.length == 4) && (y.to_i > Time.now.year - 1) }
  end

  def one_of(thing)
    ->(t) { thing.include? t }
  end

  def other_attr_eq(attr, val)
    ->(model) { model.respond_to?(attr) && model.send(attr) == val }
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
zuora-ruby-0.2.0 lib/zuora/models/validation_predicates.rb