mirror of
git://git.code.sf.net/p/zsh/code
synced 2025-01-04 06:14:50 +01:00
61 lines
1.2 KiB
Text
61 lines
1.2 KiB
Text
|
# Tests for the kill builtin.
|
||
|
#
|
||
|
# The exit codes 11 and 19 in this file don't mean anything special; they're
|
||
|
# just exit codes which are specific enough that the failure of `kill` itself
|
||
|
# can be differentiated from exiting due to executing a trap.
|
||
|
|
||
|
%test
|
||
|
|
||
|
# Correct invocation
|
||
|
|
||
|
if zmodload zsh/system &>/dev/null; then
|
||
|
(
|
||
|
trap 'exit 19' TERM
|
||
|
kill $sysparams[pid]
|
||
|
)
|
||
|
else
|
||
|
ZTST_skip='Cannot zmodload zsh/system, skipping kill with no sigspec'
|
||
|
fi
|
||
|
19:kill with no sigspec
|
||
|
|
||
|
|
||
|
if zmodload zsh/system &>/dev/null; then
|
||
|
(
|
||
|
trap 'exit 11' USR1
|
||
|
kill -USR1 $sysparams[pid]
|
||
|
)
|
||
|
else
|
||
|
ZTST_skip='Cannot zmodload zsh/system, skipping kill with sigspec'
|
||
|
fi
|
||
|
11:kill with sigspec
|
||
|
|
||
|
# Incorrect invocation
|
||
|
|
||
|
(
|
||
|
kill a b c
|
||
|
)
|
||
|
3:kill with multiple wrong inputs should increment status
|
||
|
?(eval):kill:2: illegal pid: a
|
||
|
?(eval):kill:2: illegal pid: b
|
||
|
?(eval):kill:2: illegal pid: c
|
||
|
|
||
|
(
|
||
|
kill -INT a b c
|
||
|
)
|
||
|
3:kill with sigspec and wrong inputs should increment status
|
||
|
?(eval):kill:2: illegal pid: a
|
||
|
?(eval):kill:2: illegal pid: b
|
||
|
?(eval):kill:2: illegal pid: c
|
||
|
|
||
|
(
|
||
|
kill
|
||
|
)
|
||
|
1:kill with no arguments
|
||
|
?(eval):kill:2: not enough arguments
|
||
|
|
||
|
(
|
||
|
kill -INT
|
||
|
)
|
||
|
1:kill with sigspec only
|
||
|
?(eval):kill:2: not enough arguments
|