summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorBenoit Daloze <eregontp@gmail.com>2020-09-30 12:39:20 +0200
committerBenoit Daloze <eregontp@gmail.com>2020-09-30 12:39:20 +0200
commit8dab56ea862379f03d9405c75a732cd6de81a656 (patch)
treecf75dca8add2cc335d3b7c831873fc9be8d4d657
parent31636bbddc4ac56fccdf09a815cf1915e4bec444 (diff)
Update to ruby/spec@681e8cf
-rw-r--r--spec/ruby/core/exception/top_level_spec.rb4
-rw-r--r--spec/ruby/core/process/spawn_spec.rb14
2 files changed, 10 insertions, 8 deletions
diff --git a/spec/ruby/core/exception/top_level_spec.rb b/spec/ruby/core/exception/top_level_spec.rb
index 97a91b0a58..501c7253c3 100644
--- a/spec/ruby/core/exception/top_level_spec.rb
+++ b/spec/ruby/core/exception/top_level_spec.rb
@@ -9,7 +9,7 @@ describe "An Exception reaching the top level" do
it "the Exception#cause is printed to STDERR with backtraces" do
code = <<-RUBY
def raise_cause
- raise "the cause"
+ raise "the cause"
end
def raise_wrapped
raise "wrapped"
@@ -22,7 +22,7 @@ describe "An Exception reaching the top level" do
RUBY
lines = ruby_exe(code, args: "2>&1").lines
lines.reject! { |l| l.include?('rescue in') }
- lines.map! { |l| l.split(':')[2..-1].join(':').chomp }
+ lines.map! { |l| l.chomp[/:(in.+)/, 1] }
lines.should == ["in `raise_wrapped': wrapped (RuntimeError)",
"in `<main>'",
"in `raise_cause': the cause (RuntimeError)",
diff --git a/spec/ruby/core/process/spawn_spec.rb b/spec/ruby/core/process/spawn_spec.rb
index 8c544daae4..37a7ab9152 100644
--- a/spec/ruby/core/process/spawn_spec.rb
+++ b/spec/ruby/core/process/spawn_spec.rb
@@ -536,12 +536,14 @@ describe "Process.spawn" do
File.read(@name).should == "glarkbang"
end
- it "closes STDERR in the child if :err => :close" do
- File.open(@name, 'w') do |file|
- -> do
- code = "begin; STDOUT.puts 'out'; STDERR.puts 'hello'; rescue => e; puts 'rescued'; end"
- Process.wait Process.spawn(ruby_cmd(code), :out => file, :err => :close)
- end.should output_to_fd("out\nrescued\n", file)
+ platform_is_not :windows do
+ it "closes STDERR in the child if :err => :close" do
+ File.open(@name, 'w') do |file|
+ -> do
+ code = "begin; STDOUT.puts 'out'; STDERR.puts 'hello'; rescue => e; puts 'rescued'; end"
+ Process.wait Process.spawn(ruby_cmd(code), :out => file, :err => :close)
+ end.should output_to_fd("out\nrescued\n", file)
+ end
end
end