Sha256: be149c23360893adf2a7131936a1f2d032b4e12843b1a7361911fce8ad9605cb

Contents?: true

Size: 1.53 KB

Versions: 10

Compression:

Stored size: 1.53 KB

Contents

require 'spec_helper'
require "#{Cuboid::Options.paths.lib}/rpc/server/base"

describe Cuboid::RPC::Server::Base do
    before( :each ) do
        Arachni::Reactor.global.run_in_thread
    end

    let(:subject) { Cuboid::RPC::Server::Base.new(
        host: 'localhost', port: port
    ) }
    let(:port) { available_port }

    it 'supports UNIX sockets', if: Arachni::Reactor.supports_unix_sockets? do
        server = Cuboid::RPC::Server::Base.new(
            socket: "#{Dir.tmpdir}/cuboid-base-#{Cuboid::Utilities.generate_token}"
        )

        server.start

        raised = false
        begin
            Timeout.timeout( 20 ){
                sleep 0.1 while !server.ready?
            }
        rescue Exception => e
            raised = true
        end

        expect(server.ready?).to be_truthy
        expect(raised).to be_falsey
    end

    describe '#ready?' do
        context 'when the server is not ready' do
            it 'returns false' do
                expect(subject.ready?).to be_falsey
            end
        end

        context 'when the server is ready' do
            it 'returns true' do
                subject.start

                raised = false
                begin
                    Timeout.timeout( 20 ){
                        sleep 0.1 while !subject.ready?
                    }
                rescue Exception => e
                    raised = true
                end

                expect(subject.ready?).to be_truthy
                expect(raised).to be_falsey
            end
        end
    end

end

Version data entries

10 entries across 10 versions & 1 rubygems

Version Path
cuboid-0.1.3 spec/cuboid/rpc/server/base_spec.rb
cuboid-0.1.2 spec/cuboid/rpc/server/base_spec.rb
cuboid-0.1.1 spec/cuboid/rpc/server/base_spec.rb
cuboid-0.1.0 spec/cuboid/rpc/server/base_spec.rb
cuboid-0.0.5 spec/cuboid/rpc/server/base_spec.rb
cuboid-0.0.4 spec/cuboid/rpc/server/base_spec.rb
cuboid-0.0.3 spec/cuboid/rpc/server/base_spec.rb
cuboid-0.0.3alpha spec/cuboid/rpc/server/base_spec.rb
cuboid-0.0.2alpha spec/cuboid/rpc/server/base_spec.rb
cuboid-0.0.1alpha spec/cuboid/rpc/server/base_spec.rb