module Cistern::WaitFor
Public Class Methods
wait_for(timeout = Cistern.timeout, interval = Cistern.poll_interval, &_block)
click to toggle source
# File lib/cistern/timeout.rb, line 5 def self.wait_for(timeout = Cistern.timeout, interval = Cistern.poll_interval, &_block) duration = 0 start = Time.now until yield || duration > timeout sleep(interval.to_f) duration = Time.now - start end if duration > timeout false else { duration: duration } end end
wait_for!(*_arg)
click to toggle source
# File lib/cistern/timeout.rb, line 21 def self.wait_for!(*_arg) wait_for end
Public Instance Methods
poll_interval()
click to toggle source
# File lib/cistern/wait_for.rb, line 15 def poll_interval @poll_interval || Cistern.poll_interval end
poll_interval=(poll_interval)
click to toggle source
# File lib/cistern/wait_for.rb, line 19 def poll_interval=(poll_interval) @poll_interval = poll_interval end
timeout()
click to toggle source
# File lib/cistern/wait_for.rb, line 7 def timeout @timeout || Cistern.timeout end
timeout=(timeout)
click to toggle source
# File lib/cistern/wait_for.rb, line 11 def timeout=(timeout) @timeout = timeout end
timeout_error()
click to toggle source
# File lib/cistern/wait_for.rb, line 27 def timeout_error @timeout_error || self.const_defined?(:Timeout) && const_get(:Timeout) || ::Timeout::Error end
timeout_error=(timeout_error)
click to toggle source
# File lib/cistern/wait_for.rb, line 23 def timeout_error=(timeout_error) @timeout_error = timeout_error end
wait_for(timeout = self.timeout, interval = poll_interval, &_block)
click to toggle source
# File lib/cistern/wait_for.rb, line 31 def wait_for(timeout = self.timeout, interval = poll_interval, &_block) duration = 0 start = Time.now until yield || duration > timeout sleep(interval.to_f) duration = Time.now - start end duration > timeout ? false : duration end
wait_for!(timeout = self.timeout, interval = poll_interval, &block)
click to toggle source
# File lib/cistern/wait_for.rb, line 43 def wait_for!(timeout = self.timeout, interval = poll_interval, &block) wait_for(timeout, interval, &block) || fail(timeout_error, "wait_for(#{timeout}) exceeded") end