diff options
author | eregon <eregon@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2017-06-01 17:26:12 +0000 |
---|---|---|
committer | eregon <eregon@b2dd03c8-39d4-4d8f-98ff-823fe69b080e> | 2017-06-01 17:26:12 +0000 |
commit | b2197b3fbaba5f4982546f0c12ec14a3bee5eb3e (patch) | |
tree | 300c51c6dd080209f3120be90c714fc7ccb2b66a | |
parent | 57c5e4285ba8183ee1b742d6bbd965fb71d45965 (diff) | |
download | ruby-b2197b3fbaba5f4982546f0c12ec14a3bee5eb3e.tar.gz |
Fix DRb.start_service to use any available port
git-svn-id: svn+ssh://ci.ruby-lang.org/ruby/trunk@58995 b2dd03c8-39d4-4d8f-98ff-823fe69b080e
-rw-r--r-- | spec/rubyspec/library/drb/start_service_spec.rb | 25 |
1 files changed, 8 insertions, 17 deletions
diff --git a/spec/rubyspec/library/drb/start_service_spec.rb b/spec/rubyspec/library/drb/start_service_spec.rb index e3ef48b3e3..f64021f0bd 100644 --- a/spec/rubyspec/library/drb/start_service_spec.rb +++ b/spec/rubyspec/library/drb/start_service_spec.rb @@ -3,35 +3,26 @@ require File.expand_path('../fixtures/test_server', __FILE__) require 'drb' describe "DRb.start_service" do - before :all do - @port = 9001 + (Process.pid & 7 ) + before :each do + @server = DRb.start_service("druby://localhost:0", TestServer.new) end - before :each do - @url = "druby://localhost:#{@port}" - @port += 1 + after :each do + DRb.stop_service if @server end it "runs a basic remote call" do - lambda { DRb.current_server }.should raise_error(DRb::DRbServerNotFound) - server = DRb.start_service(@url, TestServer.new) - DRb.current_server.should == server - obj = DRbObject.new(nil, @url) + DRb.current_server.should == @server + obj = DRbObject.new(nil, @server.uri) obj.add(1,2,3).should == 6 - DRb.stop_service - lambda { DRb.current_server }.should raise_error(DRb::DRbServerNotFound) end it "runs a basic remote call passing a block" do - lambda { DRb.current_server }.should raise_error(DRb::DRbServerNotFound) - server = DRb.start_service(@url, TestServer.new) - DRb.current_server.should == server - obj = DRbObject.new(nil, @url) + DRb.current_server.should == @server + obj = DRbObject.new(nil, @server.uri) obj.add_yield(2) do |i| i.should == 2 i+1 end.should == 4 - DRb.stop_service - lambda { DRb.current_server }.should raise_error(DRb::DRbServerNotFound) end end |