Sha256: f0f9d1c937903910980be2c2041e0226e3d6847a71ebbf6d26e497590a1508fa

Contents?: true

Size: 857 Bytes

Versions: 49

Compression:

Stored size: 857 Bytes

Contents

require File.expand_path('../../../spec_helper', __FILE__)
require 'timeout'

describe "Timeout.timeout" do
  it "raises Timeout::Error when it times out with no specified error type" do
    lambda {
      Timeout.timeout(1) do
        sleep 3
      end
    }.should raise_error(Timeout::Error)
  end

  it "raises specified error type when it times out" do
    lambda do
      Timeout.timeout(1, StandardError) do
        sleep 3
      end
    end.should raise_error(StandardError)
  end

  it "does not wait too long" do
    before_time = Time.now
    lambda do
      Timeout.timeout(1, StandardError) do
        sleep 3
      end
    end.should raise_error(StandardError)

    Time.now.to_f.should be_close(before_time.to_f, 1.2)
  end

  it "returns back the last value in the block" do
    Timeout.timeout(1) do
      42
    end.should == 42
  end
end

Version data entries

49 entries across 49 versions & 2 rubygems

Version Path
rhodes-7.6.0 spec/framework_spec/app/spec/library/timeout/timeout_spec.rb
rhodes-7.5.1 spec/framework_spec/app/spec/library/timeout/timeout_spec.rb
rhodes-7.4.1 spec/framework_spec/app/spec/library/timeout/timeout_spec.rb
rhodes-7.1.17 spec/framework_spec/app/spec/library/timeout/timeout_spec.rb
rhodes-6.2.0 spec/framework_spec/app/spec/library/timeout/timeout_spec.rb
rhodes-6.0.11 spec/framework_spec/app/spec/library/timeout/timeout_spec.rb
rhodes-5.5.18 spec/framework_spec/app/spec/library/timeout/timeout_spec.rb
rhodes-5.5.17 spec/framework_spec/app/spec/library/timeout/timeout_spec.rb
rhodes-5.5.15 spec/framework_spec/app/spec/library/timeout/timeout_spec.rb
rhodes-5.5.0.22 spec/framework_spec/app/spec/library/timeout/timeout_spec.rb
rhodes-5.5.2 spec/framework_spec/app/spec/library/timeout/timeout_spec.rb
rhodes-5.5.0.7 spec/framework_spec/app/spec/library/timeout/timeout_spec.rb
rhodes-5.5.0.3 spec/framework_spec/app/spec/library/timeout/timeout_spec.rb
rhodes-5.5.0 spec/framework_spec/app/spec/library/timeout/timeout_spec.rb
tauplatform-1.0.3 spec/framework_spec/app/spec/library/timeout/timeout_spec.rb
tauplatform-1.0.2 spec/framework_spec/app/spec/library/timeout/timeout_spec.rb
tauplatform-1.0.1 spec/framework_spec/app/spec/library/timeout/timeout_spec.rb
rhodes-3.5.1.12 spec/framework_spec/app/spec/library/timeout/timeout_spec.rb
rhodes-3.3.5 spec/framework_spec/app/spec/library/timeout/timeout_spec.rb
rhodes-3.4.2 spec/framework_spec/app/spec/library/timeout/timeout_spec.rb