Sha256: 8061c644a3b2d2a3442f4abc962cdf5a269273050524a91c33066bd3ea0c7a98

Contents?: true

Size: 543 Bytes

Versions: 23

Compression:

Stored size: 543 Bytes

Contents

module Capybara
  class << self

    ##
    # Provides timeout similar to standard library Timeout, but avoids threads
    #
    def timeout(seconds = 1, driver = nil, error_message = nil, &block)
      start_time = Time.now

      result = nil

      until result
        return result if result = yield

        delay = seconds - (Time.now - start_time)
        if delay <= 0
          raise TimeoutError, error_message || "timed out"
        end

        driver && driver.wait_until(delay)

        sleep(0.05)
      end
    end

  end
end

Version data entries

23 entries across 23 versions & 5 rubygems

Version Path
sunrise-cms-0.5.0.rc1 vendor/bundle/ruby/1.9.1/gems/capybara-1.1.4/lib/capybara/util/timeout.rb
capybara-1.1.4 lib/capybara/util/timeout.rb
capybara-1.1.3 lib/capybara/util/timeout.rb
nimboids-capybara-1.1.2 lib/capybara/util/timeout.rb
sunrise-cms-0.3.3 vendor/bundle/ruby/1.9.1/gems/capybara-1.1.2/lib/capybara/util/timeout.rb
sunrise-cms-0.3.2 vendor/bundle/ruby/1.9.1/gems/capybara-1.1.2/lib/capybara/util/timeout.rb
sunrise-cms-0.3.1 vendor/bundle/ruby/1.9.1/gems/capybara-1.1.2/lib/capybara/util/timeout.rb
sunrise-cms-0.3.0 vendor/bundle/ruby/1.9.1/gems/capybara-1.1.2/lib/capybara/util/timeout.rb
sunrise-cms-0.3.0.rc vendor/bundle/ruby/1.9.1/gems/capybara-1.1.2/lib/capybara/util/timeout.rb
frameworks-capybara-0.2.0.rc6 vendor/bundle/ruby/1.8/gems/capybara-1.1.2/lib/capybara/util/timeout.rb
frameworks-capybara-0.2.0.rc5 vendor/bundle/ruby/1.8/gems/capybara-1.1.2/lib/capybara/util/timeout.rb
frameworks-capybara-0.2.0.rc4 vendor/bundle/ruby/1.8/gems/capybara-1.1.2/lib/capybara/util/timeout.rb
frameworks-capybara-0.2.0.rc3 vendor/bundle/ruby/1.8/gems/capybara-1.1.2/lib/capybara/util/timeout.rb
frameworks-capybara-0.2.0.rc2 vendor/bundle/ruby/1.8/gems/capybara-1.1.2/lib/capybara/util/timeout.rb
bbc-capybara-1.1.2 lib/capybara/util/timeout.rb
capybara-1.1.2 lib/capybara/util/timeout.rb
capybara-1.1.1 lib/capybara/util/timeout.rb
capybara-1.1.0 lib/capybara/util/timeout.rb
capybara-1.1.0.rc1 lib/capybara/util/timeout.rb
capybara-1.0.1 lib/capybara/util/timeout.rb