Sha256: 4386f5d702246fffeb39563989b49bab487bec971bf0abcc2da15e86dcf1d8ad

Contents?: true

Size: 1.1 KB

Versions: 1

Compression:

Stored size: 1.1 KB

Contents

module Polling
  module Confirm
    module_function
    def check_value(value)
      value = value.to_i
      raise TypeError, "Please set a value that is multiple of 60." if (value % 60 != 0) && value > 60
      return value
    end

    def check_arr(arr)
      if arr.count == 1
        time = convert(arr[0])
        #arr = time < 60 ? create_arr(time) : [time]
        arr = create_arr(time)
        raise TypeError, "Please set a value that is divisible by 60." if (60 % time != 0) && time < 60
      end
      return arr
    end

    def convert(value)
      case value
      when /(\d+)s/
        value = $1.to_i
      when /(\d+)m/
        value = $1.to_i*60
      when /(\d+)h/
        value = $1.to_i*60*60
      when /(\d+)d/
        value = $1.to_i*60*60*24
      when String
        value = value.to_i
      end
      return value
    end

    def create_arr(time)
      arr = Array.new
      if time < 60
        arr << 0 if time != 0
        result = time
        while time < 60
          arr << time
          time += result
        end
      else
        arr << time
      end
      return arr
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
polling-0.0.7 lib/polling/confirm.rb