Sha256: 4e01b814e99428d825dd8259ec3359e528ea2c15015019e639f7ea8a5ab5c7e9

Contents?: true

Size: 501 Bytes

Versions: 9

Compression:

Stored size: 501 Bytes

Contents

module PageMagic
  # module WaitMethods - contains methods for waiting
  module WaitMethods
    # Wait until a the supplied block returns true
    # @example
    #   wait_until do
    #     (rand % 2) == 0
    #   end
    def wait_until(timeout_after: 5, retry_every: 1, &_block)
      start_time = Time.now
      until Time.now > start_time + timeout_after
        return true if yield == true
        sleep retry_every
      end
      raise TimeoutException, 'Action took to long'
    end
  end
end

Version data entries

9 entries across 9 versions & 1 rubygems

Version Path
page_magic-1.2.9 lib/page_magic/wait_methods.rb
page_magic-1.2.8 lib/page_magic/wait_methods.rb
page_magic-1.2.8.alpha lib/page_magic/wait_methods.rb
page_magic-1.2.7 lib/page_magic/wait_methods.rb
page_magic-1.2.6 lib/page_magic/wait_methods.rb
page_magic-1.2.5 lib/page_magic/wait_methods.rb
page_magic-1.2.5.alpha1 lib/page_magic/wait_methods.rb
page_magic-1.2.4 lib/page_magic/wait_methods.rb
page_magic-1.2.3 lib/page_magic/wait_methods.rb