Sha256: ac928616e6abdd902d2b1279a7f99fd76373d3848c7d9a5518614813913435af
Contents?: true
Size: 1.25 KB
Versions: 4
Compression:
Stored size: 1.25 KB
Contents
require 'spec_helper' describe Terrapin::CommandLine::ProcessRunner do if Terrapin::CommandLine::ProcessRunner.supported? it_behaves_like "a command that does not block" it 'runs the command given and captures the output' do output = subject.call("echo hello") expect(output).to have_output "hello\n" end it 'runs the command given and captures the error output' do output = subject.call("echo hello 1>&2") expect(output).to have_error_output "hello\n" end it 'modifies the environment and runs the command given' do output = subject.call("echo $yes", {"yes" => "no"}) expect(output).to have_output "no\n" end it 'sets the exitstatus when a command completes' do subject.call("ruby -e 'exit 0'") expect($?.exitstatus).to eq(0) subject.call("ruby -e 'exit 5'") expect($?.exitstatus).to eq(5) end it "runs the command it's given and allows access to stderr afterwards" do cmd = Terrapin::CommandLine.new( "ruby", "-e '$stdout.puts %{hello}; $stderr.puts %{goodbye}'", :swallow_stderr => false ) cmd.run expect(cmd.command_output).to eq "hello\n" expect(cmd.command_error_output).to eq "goodbye\n" end end end
Version data entries
4 entries across 3 versions & 2 rubygems