Module: CoffeeBreak

Defined in:
lib/coffee_break.rb,
lib/coffee_break/errors.rb,
lib/coffee_break/default.rb,
lib/coffee_break/version.rb,
lib/coffee_break/waiter/coffee.rb

Defined Under Namespace

Modules: Waiter Classes: TimeoutError

Constant Summary collapse

DEFAULT =

private

{
  timeout: 30,
  interval: 0.1,
  rescues: [],
  raise: true
}
VERSION =
"0.1.0"

Class Method Summary collapse

Class Method Details

.default_intervalObject



23
24
25
# File 'lib/coffee_break.rb', line 23

def self.default_interval
  DEFAULT[:interval]
end

.default_interval=(seconds) ⇒ Object



27
28
29
# File 'lib/coffee_break.rb', line 27

def self.default_interval=(seconds)
  DEFAULT[:interval] = seconds
end

.default_raiseObject



39
40
41
# File 'lib/coffee_break.rb', line 39

def self.default_raise
  DEFAULT[:raise]
end

.default_raise=(boolean) ⇒ Object



43
44
45
# File 'lib/coffee_break.rb', line 43

def self.default_raise=(boolean)
  DEFAULT[:raise] = boolean
end

.default_rescuesObject



31
32
33
# File 'lib/coffee_break.rb', line 31

def self.default_rescues
  DEFAULT[:rescues]
end

.default_rescues=(exceptions) ⇒ Object



35
36
37
# File 'lib/coffee_break.rb', line 35

def self.default_rescues=(exceptions)
  DEFAULT[:rescues] = exceptions
end

.default_timeoutObject



15
16
17
# File 'lib/coffee_break.rb', line 15

def self.default_timeout
  DEFAULT[:timeout]
end

.default_timeout=(seconds) ⇒ Object



19
20
21
# File 'lib/coffee_break.rb', line 19

def self.default_timeout=(seconds)
  DEFAULT[:timeout] = seconds
end

.until(timeout: DEFAULT[:timeout], interval: DEFAULT[:interval], rescues: DEFAULT[:rescues], raise: DEFAULT[:raise], message: nil, &block) ⇒ Object



7
8
9
10
11
12
13
# File 'lib/coffee_break.rb', line 7

def self.until(timeout: DEFAULT[:timeout], interval: DEFAULT[:interval],
               rescues: DEFAULT[:rescues], raise:    DEFAULT[:raise],
               message: nil,               &block)

  Waiter::Coffee.break(timeout: timeout, interval: interval, rescues: rescues,
                       raise: raise).until(message: message, &block)
end