Sha256: e49d66b55f6217956ed76471553e40c08fa16a501e49e7e0bc380e33c835deab

Contents?: true

Size: 1.35 KB

Versions: 1

Compression:

Stored size: 1.35 KB

Contents

require 'spec_helper'

require 'amqp-spec/em_spec_shim'

describe 'Legacy EM-Spec based examples should run unmodified' do
  describe EM::SpecHelper, ' when included' do
    include EM::SpecHelper

    it "should not require a call to done when #em is not used" do
      1.should == 1
    end

    it "should have timers" do
      start = Time.now
      em do
        EM.add_timer(0.5) {
          (Time.now-start).should be_within(0.1).of(0.5)
          done
        }
      end
    end

    it "should be possible to set spec timeouts as a number of seconds" do
      start = Time.now
      expect {
        em(0.5) do
          EM.add_timer(1) { done }
        end
      }.to raise_error SpecTimeoutExceededError
      (Time.now-start).should be_within(0.5).of(0.1)
    end

    it "should be possible to set spec timeout as an option (amqp interface compatibility)" do
      start = Time.now
      expect {
        em(0.5) do
          EM.add_timer(1) { done }
        end
      }.to raise_error SpecTimeoutExceededError
      (Time.now-start).should be_within(0.1).of(0.5)
    end
  end

  describe EM::Spec, ' when included' do
    include EM::Spec

    it_should_behave_like 'Spec examples'
  end

  describe RSPEC, " when running an example group after groups that uses EM specs " do
    it "should work normally" do
      :does_not_hang.should_not be_false
    end
  end
end

Version data entries

1 entries across 1 versions & 1 rubygems

Version Path
amqp-spec-0.3.8 spec/em_legacy_spec.rb