def increment(amount = 1, time: Time.now)
      raise ArgumentError, 'Amount must be an integer' if amount != amount.to_i
      return amount <= 0 if max.zero?

      !!run_script([amount.to_i, max])
    end
def increment(amount = 1, time: Time.now)
      raise ArgumentError, 'Amount must be an integer' if amount != amount.to_i
      return amount <= 0 if max.zero?

      !!run_script([amount.to_i, max])
    end
Constructor takes an action name as a symbol, a maximum cap, and the
 period of limit. +max+ and +period+ are required keyword arguments.

 @param action [Symbol] action name
 @param value [String] limit target value
 @param max [Integer] required limit maximum
 @raise [ArgumentError] if max is nil
 Increment the amount used by the given number. Does not perform increment
 if the operation would exceed the limit. Returns whether the operation was
 successful.

 @param amount [Integer] amount to increment by
 @return [Boolean] true if increment succeded and false if incrementing
   would exceed the limit