Sha256: 530bf61dd11e7dd36f8a6dcc44763bf66a36f85f165d82d081475537a663d481

Contents?: true

Size: 1.47 KB

Versions: 12

Compression:

Stored size: 1.47 KB

Contents

require 'aruba/processes/spawn_process'

RSpec.describe Aruba::Processes::SpawnProcess do
  subject(:process) { described_class.new(command, exit_timeout, io_wait, working_directory, environment, main_class) }

  let(:command) { 'echo "yo"' }
  let(:exit_timeout) { 1 }
  let(:io_wait) { 1 }
  let(:working_directory) { Dir.getwd }
  let(:environment) { ENV.to_hash.dup }
  let(:main_class) { nil }

  describe "#stdout" do
    before(:each) { process.start }
    before(:each) { process.stop }

    context 'when invoked once' do
      it { expect(process.stdout).to eq "yo\n" }
    end

    context 'when invoked twice' do
      it { 2.times { expect(process.stdout).to eq "yo\n" } }
    end
  end

  describe "#stderr" do
    let(:command) { 'fixtures/spawn_process/stderr.sh yo' }

    before(:each) { process.start }
    before(:each) { process.stop }

    context 'when invoked once' do
      it { expect(process.stderr).to eq "yo\n" }
    end

    context 'when invoked twice' do
      it { 2.times { expect(process.stderr).to eq "yo\n" } }
    end
  end

  describe "#stop" do
    before(:each) { process.start }

    context 'when stopped successfully' do
      it { process.stop }
    end
  end

  describe "#start" do
    context "when process run succeeds" do
      it { expect { process.start }.not_to raise_error }
    end

    context "when process run fails" do
      let(:command) { 'does_not_exists' }

      it { expect {process.start}.to raise_error Aruba::LaunchError }
    end
  end
end

Version data entries

12 entries across 12 versions & 2 rubygems

Version Path
aruba-0.14.3 spec/aruba/spawn_process_spec.rb
aruba-win-fix-0.14.2 spec/aruba/spawn_process_spec.rb
aruba-0.14.2 spec/aruba/spawn_process_spec.rb
aruba-0.14.1 spec/aruba/spawn_process_spec.rb
aruba-0.14.0 spec/aruba/spawn_process_spec.rb
aruba-0.13.0 spec/aruba/spawn_process_spec.rb
aruba-0.12.0 spec/aruba/spawn_process_spec.rb
aruba-0.11.2 spec/aruba/spawn_process_spec.rb
aruba-0.11.1 spec/aruba/spawn_process_spec.rb
aruba-0.11.0.pre4 spec/aruba/spawn_process_spec.rb
aruba-0.11.0.pre3 spec/aruba/spawn_process_spec.rb
aruba-0.11.0.pre2 spec/aruba/spawn_process_spec.rb