Sha256: 36106cd00173a64e57f065106d0007bf068728cd65109d8ecc9124b2aeaaf43e

Contents?: true

Size: 437 Bytes

Versions: 3

Compression:

Stored size: 437 Bytes

Contents

module Virtuaaliviivakoodi
  DUE_DATE_PATTERN = /^[0-9]{6}$/

  class DueDateNormalizer
    def self.call(due_date)
      if due_date
        if due_date.respond_to?(:strftime)
          due_date.strftime("%y%m%d")
        else
          raise ArgumentError, "Due date is not valid" if (!due_date.to_s.match(DUE_DATE_PATTERN))

          due_date
        end
      else
        Virtuaaliviivakoodi.pad("", 6)
      end
    end
  end
end

Version data entries

3 entries across 3 versions & 1 rubygems

Version Path
virtuaaliviivakoodi-1.0.0 lib/virtuaaliviivakoodi/due_date_normalizer.rb
virtuaaliviivakoodi-0.1.1 lib/virtuaaliviivakoodi/due_date_normalizer.rb
virtuaaliviivakoodi-0.1.0 lib/virtuaaliviivakoodi/due_date_normalizer.rb