Sha256: 3ec988b6fa09152a3d92c4485460a16df928a0b3043f2a26e17a28af047ce9d4

Contents?: true

Size: 1.34 KB

Versions: 2

Compression:

Stored size: 1.34 KB

Contents

require File.expand_path(File.dirname(__FILE__) + '/../spec_helper')

describe DRbQS::Node do
  context "when starting node" do
    def init_node_objects(object = {})
      @uri = 'drbunix:/tmp/drb_test'
      @drb_object = {
        :message => Rinda::TupleSpace.new,
        :queue => Rinda::TupleSpace.new,
        :result => Rinda::TupleSpace.new,
        :key => 'server_key',
        :transfer => nil
      }.merge(object)
    end

    subject do
      DRbQS::Node.new(@uri, :log_file => STDOUT)
    end

    before(:all) do
      init_node_objects
    end

    it "should connect to server." do
      node_number = 10
      DRb::DRbObject.should_receive(:new_with_uri).and_return(@drb_object)
      node_connection = double('node connection')
      node_connection.stub(:node_number).and_return(node_number)
      node_connection.stub(:get_initialization).and_return(nil)
      task_client = double('task client')
      task_client.stub(:node_number).and_return(node_number)
      worker = double('worker')
      worker.stub(:create_process)
      worker.stub(:on_error)
      worker.stub(:on_result)
      DRbQS::Node::Connection.should_receive(:new).and_return(node_connection)
      DRbQS::Node::TaskClient.should_receive(:new).and_return(task_client)
      DRbQS::Worker::ProcessSet.should_receive(:new).and_return(worker)
      subject.connect
    end
  end
end

Version data entries

2 entries across 2 versions & 1 rubygems

Version Path
drbqs-0.1.1 spec/node/node_spec.rb
drbqs-0.1.0 spec/node/node_spec.rb