summaryrefslogtreecommitdiff
path: root/spec/unit/mixin/command_spec.rb
diff options
context:
space:
mode:
Diffstat (limited to 'spec/unit/mixin/command_spec.rb')
-rw-r--r--spec/unit/mixin/command_spec.rb26
1 files changed, 13 insertions, 13 deletions
diff --git a/spec/unit/mixin/command_spec.rb b/spec/unit/mixin/command_spec.rb
index 96660be436..e198e3addd 100644
--- a/spec/unit/mixin/command_spec.rb
+++ b/spec/unit/mixin/command_spec.rb
@@ -31,41 +31,41 @@ describe Chef::Mixin::Command, :volatile do
it "should be possible to read the child process's stdout and stderr" do
popen4("sh -c 'echo hello && echo world >&2'") do |pid, stdin, stdout, stderr|
- stdout.read.should == "hello\n"
- stderr.read.should == "world\n"
+ expect(stdout.read).to eq("hello\n")
+ expect(stderr.read).to eq("world\n")
end
end
it "should default all commands to be run in the POSIX standard C locale" do
popen4("echo $LC_ALL") do |pid, stdin, stdout, stderr|
- stdout.read.strip.should == "C"
+ expect(stdout.read.strip).to eq("C")
end
end
it "should respect locale when specified explicitly" do
popen4("echo $LC_ALL", :environment => {"LC_ALL" => "es"}) do |pid, stdin, stdout, stderr|
- stdout.read.strip.should == "es"
+ expect(stdout.read.strip).to eq("es")
end
end
it "should end when the child process reads from STDIN and a block is given" do
- lambda {Timeout.timeout(10) do
+ expect {Timeout.timeout(10) do
popen4("ruby -e 'while gets; end'", :waitlast => true) do |pid, stdin, stdout, stderr|
(1..5).each { |i| stdin.puts "#{i}" }
end
end
- }.should_not raise_error
+ }.not_to raise_error
end
describe "when a process detaches but doesn't close STDOUT and STDERR [CHEF-584]" do
it "returns immediately after the first child process exits" do
- lambda {Timeout.timeout(10) do
+ expect {Timeout.timeout(10) do
pid, stdin,stdout,stderr = nil,nil,nil,nil
evil_forker="exit if fork; 10.times { sleep 1}"
popen4("ruby -e '#{evil_forker}'") do |pid,stdin,stdout,stderr|
end
- end}.should_not raise_error
+ end}.not_to raise_error
end
end
@@ -76,13 +76,13 @@ describe Chef::Mixin::Command, :volatile do
include Chef::Mixin::Command
it "logs the command's stderr and stdout output if the command failed" do
- Chef::Log.stub(:level).and_return(:debug)
+ allow(Chef::Log).to receive(:level).and_return(:debug)
begin
run_command(:command => "sh -c 'echo hello; echo world >&2; false'")
violated "Exception expected, but nothing raised."
rescue => e
- e.message.should =~ /STDOUT: hello/
- e.message.should =~ /STDERR: world/
+ expect(e.message).to match(/STDOUT: hello/)
+ expect(e.message).to match(/STDERR: world/)
end
end
@@ -93,10 +93,10 @@ describe Chef::Mixin::Command, :volatile do
# btm
# Serdar - During Solaris tests, we've seen that processes
# are taking a long time to exit. Bumping timeout now to 10.
- lambda {Timeout.timeout(10) do
+ expect {Timeout.timeout(10) do
evil_forker="exit if fork; 10.times { sleep 1}"
run_command(:command => "ruby -e '#{evil_forker}'")
- end}.should_not raise_error
+ end}.not_to raise_error
end
end