cmdtest/t/CMDTEST_exit_nonzero.rb
Johan Holmberg 776f1595ac New CMDTEST_*.rb files testing "cmdtest" itself.
These files will replaces the old tests.
2011-10-12 22:19:44 +02:00

64 lines
1.1 KiB
Ruby

require "selftest_utils"
class CMDTEST_exit_nonzero < Cmdtest::Testcase
include SelftestUtils
#----------------------------------------
# 'exit_nonzero' expects the command to exit
# with a non-zero exit status
def test_exit_nonzero_CORRECT
create_CMDTEST_foo [
"cmd 'false.rb' do",
" exit_nonzero",
"end",
]
cmd_cmdtest do
stdout_equal [
"### false.rb",
]
end
end
#----------------------------------------
# 'exit_nonzero' works for other non-zero
# exit statuses than 1 too
def test_exit_nonzero_CORRECT_18
create_CMDTEST_foo [
"cmd 'exit.rb 18' do",
" exit_nonzero",
"end",
]
cmd_cmdtest do
stdout_equal [
"### exit.rb 18",
]
end
end
#----------------------------------------
# 'exit_nonzero' gives an error if the exit status is 0
def test_exit_nonzero_INCORRECT
create_CMDTEST_foo [
"cmd 'true.rb' do",
" exit_nonzero",
"end",
]
cmd_cmdtest do
stdout_equal [
"### true.rb",
"--- ERROR: expected nonzero exit status",
]
exit_nonzero
end
end
end