Sha256: 0c1d9543dd7b1bba8fe5c44b0a25e5be7b63246a889d846a7c03dfe30f643a58
Contents?: true
Size: 1.38 KB
Versions: 1
Compression:
Stored size: 1.38 KB
Contents
require 'torquebox/messaging/future' include TorqueBox::Messaging class Future attr_writer :started attr_writer :complete attr_writer :error attr_writer :result end describe TorqueBox::Messaging::Future do before(:each) do @queue = mock( Queue ) @future = Future.new( @queue ) end describe "#result" do it "should raise if it fails to start before timeout" do @future.stub(:receive) lambda { @future.result( 1 ) }.should raise_error( TimeoutException ) end it "should raise if it fails to complete before timeout" do @future.stub(:receive) @future.started = true lambda { @future.result( 1 ) }.should raise_error( TimeoutException ) end it "should raise if a remote error occurs" do @future.stub(:receive) @future.started = true @future.error = ArgumentError.new lambda { @future.result( 1 ) }.should raise_error( ArgumentError ) end it "should return the result if complete" do @future.stub(:receive) @future.started = true @future.complete = true @future.result = :success! @future.result.should == :success! end end describe "#method_missing" do it "should delegate to #result" do @result = mock(:result) @future.should_receive(:result).and_return(@result) @result.should_receive(:blah) @future.blah end end end
Version data entries
1 entries across 1 versions & 1 rubygems
Version | Path |
---|---|
torquebox-messaging-1.1-java | spec/future_spec.rb |