summaryrefslogtreecommitdiff
path: root/spec/ruby/core/exception/system_exit_spec.rb
blob: 5c6116576baad6e7d58eb8a16d416b655722982b (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
require_relative '../../spec_helper'

describe "SystemExit" do
  it "sets the exit status and exits silently when raised" do
    code = 'raise SystemExit.new(7)'
    result = ruby_exe(code, args: "2>&1")
    result.should == ""
    $?.exitstatus.should == 7
  end

  it "sets the exit status and exits silently when raised when subclassed" do
    code = 'class CustomExit < SystemExit; end; raise CustomExit.new(8)'
    result = ruby_exe(code, args: "2>&1")
    result.should == ""
    $?.exitstatus.should == 8
  end
end